Расправил крылья
Feb. 18th, 2011 04:04 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Расправил крылья.
Около месяца понадобилось, чтобы разобраться с Haskell.
Львиная часть этого времени пошла чтобы расставаться с заблуждениями, полученными ранее от эпизодического чтения всякой фигни про монады.
Как это удалось сделать?
Во первых, заставил себя забыть о Haskell и монадах.
Во вторых, представил реализацию ленивого языка и способы задания порядка обмена информацией с внешним миром.
Когда вспомнил вновь о Haskell - первая мысль была: "зачем же в Haskell это сделано так сложно"? Спасибо http://nponeccop.livejournal.com за ссылки на первоисточники, которые помогли понять, что не так то и сложно это сделано, как кажется при чтении руководств, пытающихся объяснить все по простому.
Замечание. Ленивость может быть реализована при помощи санок или продолжение. В Haskell используются санки.
Санки - это функция, которая возвращается вместо результата ленивой функции.
Около месяца понадобилось, чтобы разобраться с Haskell.
Львиная часть этого времени пошла чтобы расставаться с заблуждениями, полученными ранее от эпизодического чтения всякой фигни про монады.
Как это удалось сделать?
Во первых, заставил себя забыть о Haskell и монадах.
Во вторых, представил реализацию ленивого языка и способы задания порядка обмена информацией с внешним миром.
Когда вспомнил вновь о Haskell - первая мысль была: "зачем же в Haskell это сделано так сложно"? Спасибо http://nponeccop.livejournal.com за ссылки на первоисточники, которые помогли понять, что не так то и сложно это сделано, как кажется при чтении руководств, пытающихся объяснить все по простому.
Замечание. Ленивость может быть реализована при помощи санок или продолжение. В Haskell используются санки.
Санки - это функция, которая возвращается вместо результата ленивой функции.