У программиста есть две функции f: a → b и g: b' → d и ему надо применить вторую к результату первой. Что делает нормальный программист в этом случае? Правильно! Пишет функцию convert: (b' → d) → b → d. А если есть еще h: d' → e? Правильно! convert2: (d' → e) → d → e. Но чтобы не писать много текста, он лучше сразу определит >>= f g = convert g . f и будет писать f >>= g >>=2 h. А потом заметит, что у него x' всегда связан с x (например x = List x' или x = Maybe x'), сделает интерфейс >>=, и будет просто писать f >>= g >>= h, спокойно используя все это дело у себя в коде. На все про все уйдет от силы полчаса и несколько десятков строк кода, программист даже не заметит, что использовал какой-то особый чудодейственный прием. Ну написал пару простенький функций ля удобства, что такого? Что же сделает любитель хаскиля? Обмажется кучей теорката, заметит что ЭТОЖ МОНОИД В КАТЕГОРИИ ЭНДОФУНКТОРОВ, налепит кучу ненужной терминологии, а потом будет везде бегать и вопить — какой же четкий этот хаскиль, что там есть МОНАДЫ, а вот больше их нигде нет, потому что без полиморфизма 2 ранга монады не сделаешь, засунет эти МОНАДЫ всюду, куда только можно и еще напишет статью о том, что такое монада, причем напишет так, чтобы максимально запутать читающего.
(из камента http://yantayga.livejournal.com/16112.ht...
DJm00n
15.09.2011 08:45 Vacuum-IM
Do you really want to delete ?
looks like бугурт гуманитария.
Я мало что понял, но паста доставила.