metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2015-07-10 02:01 pm

Хаскель и среднее арифметическое

Вот я хаскель использовал только пару раз и практически его не знаю, но в чем проблема с неэнергичным foldl - помню. Про то, что нужны банг-паттерны внутри тупла - краем уха слышал, но не вникал.
Стеб же на эту тему людей, которые слышали звон, да не знают, где он, меня очень сильно огорчает.
Ладно, айсед критикует - он хотя бы писал на этом и понимает, о чем речь идет. А так - это выглядит как "разработчики на клиппере критикуют SQL за то, что теория множеств".

[identity profile] aamonster.livejournal.com 2015-07-10 02:17 pm (UTC)(link)
Хорошо. Значит, правильно учить можно, но пока сложно (иначе процент был бы повыше).
Подождём.

Просто если есть стиль, позволяющий избегать таких ошибок, то учить без него - всё равно что учить людей на императивных языках считать факториал рекурсивно. А книжек, которые учат писать сразу в нужном стиле, я пока вроде не видел (UPD: надо снова взяться за Real World Haskell) - видел лишь статьи типа "а давайте посмотрим профайлером и решим, где добавить строгости".

UPD: Хотя, конечно, не так красиво получается. Академический язык, в котором всё лениво и (благодаря этому) единообразно, if и иже с ним - обычные функции, а не специальные формы - это прелесть. Но реальный мир вносит свои коррективы...
Edited 2015-07-10 14:24 (UTC)

[identity profile] dr-cha0s.livejournal.com 2015-07-10 04:18 pm (UTC)(link)
Ленивость - это особенность. Всё. Как и отсутствие GC в C++.
Я за 2 года написания кода в продакшн на прикол с ленивостью напоролся ли тогда когда передал санк с эксепшеном в другой тред, где не предусматривалась обработка эксепшена. Мой пример конечно не показатель.