Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[13.58.150.59] |
|
Страницы: (4) 1 2 [3] 4 все ( Перейти к последнему сообщению ) |
Сообщ.
#31
,
|
|
|
Цитата Монады и точки - это взаимно перпендикулярные сущности. Ну фиг знает. Цепочка вычеслений и цепочка вычеслений. |
Сообщ.
#32
,
|
|
|
Цитата D_KEY @ Раз забыл, значит редко используешь. Значит да, лучше обсудить детали. И значит в этом конкретном случае от паттерна толку не было. Почему? Юзать паттерны не зная что из них чем является - нормальное явление для программиста. |
Сообщ.
#33
,
|
|
|
Цитата OpenGL @ Юзать паттерны не зная что из них чем является - нормальное явление для программиста. Я под паттерном понимаю в данном случае именно устоявшийся каталогизированный способ и соответствующий ему термин. А то, что твое решение совпадает с паттерном - это уже другой вопрос Думаю, что у всех программистов такое бывает и читая тот же GoF впервые они видят там свои же решения, пусть и чуть в другом виде иногда. |
Сообщ.
#34
,
|
|
|
Разговор про монады напомнил мне, как я тут развлекался когда-то в одной из тем
Монады и C++ Часть 2(списки) Часть 3(монада IO) Вот уж действительно Добавлено Я думал меньше времени прошло |
Сообщ.
#35
,
|
|
|
Цитата Астарот @ Всякая монада - это действительно цепочка вычислений. Но не всякая цепочка вычислений - это монада. Ну фиг знает. Цепочка вычеслений и цепочка вычеслений. |
Сообщ.
#36
,
|
|
|
Цитата applegame @ Цитата Астарот @ Всякая монада - это действительно цепочка вычислений. Но не всякая цепочка вычислений - это монада.Ну фиг знает. Цепочка вычеслений и цепочка вычеслений. Что никак не объясняет почему они "перпендикулярны". |
Сообщ.
#37
,
|
|
|
Цитата Астарот @ Я хз как ещё объяснять. "Монады - это точки" это примерно как "студенты - это программисты". Так вот, студенты и программисты взаимно ортогональны. Есть такая аллегория. Что никак не объясняет почему они "перпендикулярны". |
Сообщ.
#38
,
|
|
|
Цитата applegame @ Я хз как ещё объяснять. "Монады - это точки" это примерно как "студенты - это программисты". Так вот, студенты и программисты взаимно ортогональны. Есть такая аллегория. Очевидно же, что когда я говорю "монада - это точки", то рассчитываю, что все тут присутствующие все же программисты, и смогут развернуть это колхозное определение во что-то вроде "объекты содержащие логику и состояние и поддерживающие цепочечные вызовы", или как-то так. Вообще говоря какой-нибудь "билдер" на все возвращающий сам себя, а на build() результат - тоже монада |
Сообщ.
#39
,
|
|
|
Цитата Астарот @ "объекты содержащие логику и состояние и поддерживающие цепочечные вызовы" Любой класс, в котором есть логика и состояние и в котором есть метод возвращающий тип-объект подходит под это определение. |
Сообщ.
#40
,
|
|
|
Сообщ.
#41
,
|
|
|
Цитата korvin @ Как ты себе представляешь приложение без I/O? Без монад можно разве что либы писать. Можно, но не нужно, ибо с ними удобней. |
Сообщ.
#42
,
|
|
|
Более того, именно ради I/O программа и пишется
|
Сообщ.
#43
,
|
|
|
Цитата applegame @ Цитата korvin @ Как ты себе представляешь приложение без I/O? Без монад можно разве что либы писать.Можно, но не нужно, ибо с ними удобней. Возможно, есть другие способы сделать ввод/вывод в haskell. Без монад. |
Сообщ.
#44
,
|
|
|
Цитата applegame @ Как ты себе представляешь приложение без I/O? Без монад можно разве что либы писать. Монады не про IO. Берёшь unsafePerformIO и вперёд. Альтернативный вариант — unique types в Clean. |
Сообщ.
#45
,
|
|
|
Цитата korvin @ Монады не про IO, зато IO про монады.Монады не про IO. Цитата korvin @ Берёшь unsafePerformIO и вперёд. Там все равно присутствует монада IO: Цитата This is the "back door" into the IO monad, allowing IO computation to be performed at any time. И всякие операторы вроде >>= и do-нотация - это тоже использование монад. Монады в Хаскеле - это не прикольная дополнительная возможность, а суровая необходимость. |