Хаскель и среднее арифметическое
Jul. 10th, 2015 02:01 pmВот я хаскель использовал только пару раз и практически его не знаю, но в чем проблема с неэнергичным foldl - помню. Про то, что нужны банг-паттерны внутри тупла - краем уха слышал, но не вникал.
Стеб же на эту тему людей, которые слышали звон, да не знают, где он, меня очень сильно огорчает.
Ладно, айсед критикует - он хотя бы писал на этом и понимает, о чем речь идет. А так - это выглядит как "разработчики на клиппере критикуют SQL за то, что теория множеств".
Стеб же на эту тему людей, которые слышали звон, да не знают, где он, меня очень сильно огорчает.
Ладно, айсед критикует - он хотя бы писал на этом и понимает, о чем речь идет. А так - это выглядит как "разработчики на клиппере критикуют SQL за то, что теория множеств".
no subject
Date: 2015-07-10 11:39 am (UTC)Интереснее другое: пока в обсуждениях я видел всего то ли 1, то ли 2-х человек, для которых правильное решение - очевидно и иначе не написать: "Если хоть чуть-чуть писал на хаскелле, такое делается на автомате, даже на бумаже. Безусловный рефлекс -- аккумулятор (что-то делаем, а результат используется только в конце) -- ставим bang pattern." (c)
no subject
Date: 2015-07-10 01:57 pm (UTC)no subject
Date: 2015-07-10 02:17 pm (UTC)Подождём.
Просто если есть стиль, позволяющий избегать таких ошибок, то учить без него - всё равно что учить людей на императивных языках считать факториал рекурсивно. А книжек, которые учат писать сразу в нужном стиле, я пока вроде не видел (UPD: надо снова взяться за Real World Haskell) - видел лишь статьи типа "а давайте посмотрим профайлером и решим, где добавить строгости".
UPD: Хотя, конечно, не так красиво получается. Академический язык, в котором всё лениво и (благодаря этому) единообразно, if и иже с ним - обычные функции, а не специальные формы - это прелесть. Но реальный мир вносит свои коррективы...
no subject
Date: 2015-07-10 04:18 pm (UTC)Я за 2 года написания кода в продакшн на прикол с ленивостью напоролся ли тогда когда передал санк с эксепшеном в другой тред, где не предусматривалась обработка эксепшена. Мой пример конечно не показатель.
no subject
Date: 2015-07-11 11:40 pm (UTC)Да, это действительно "безусловный рефлекс". К сожалению, я не видел этих советов в явном виде в учебниках.
no subject
Date: 2015-07-12 06:42 am (UTC)no subject
Date: 2015-07-12 10:49 am (UTC)Мой опыт (с 1998 года) говорит именно об этом.
no subject
Date: 2015-07-14 08:05 am (UTC)