(no subject)

Dec 17, 2007 10:28

Судя по тому, что меня так и подмывает написать свой monad tutorial, я вскоре стану достоин звания новичка хаскелла.

А вообще интересно, где действительно находится концепция монад по шкале сложности, наряду с функциями, виртуальными функциями, объектами, переменными, массивами, генериками, плюсовыми шаблонами... Подозреваю, что генерики (система типов Хиндли-Милнера, хехе) и, тем паче, шаблоны C++ - сложнее.

Конечно, если вообще не иметь дела с ФП, то чтобы как следует рассказать про монады, придется рассказать про систему типов Хаскелла и чуточку про лямбда-исчисление - а это за 5 минут не расскажешь, и будет много незнакомых терминов - но ведь и про ООП тоже за 5 минут не расскажешь, если человек еще не знает, что такое переменная; и на термины "инкапсуляция, наследование, полиморфизм" тоже можно замахать руками, не дослушав их определения и сказать "ой, похоже, это слишком сложно, чтобы быть полезным".

А вот статья про бананы, линзы, конверты и колючую проволоку ест мой моск; у авторов явно был не Нескафе, такое количество нетрадиционной нотации создает такое же впечатление, как язык J :) Вот нахрена было, к примеру, обозначать произведение как A||B, а не как AxB?
Зато я теперь буду подходить ко всем, смотреть на их явский исходник, складывающий числа в списке, и говорить "Тю, батенька, да у вас же катаморфизм!"
Previous post Next post
Up