Dmitrii Kashin -> debian-russian@lists.debian.org  @ Wed, 07 Oct 2015 02:07:07 
+0300:

 >>  АН> Offtopic:
 >>  АН> А что кто-то реально использует Haskell?
 >>
 >> Да.  И на данный момент я его считаю лучшим вариантом по соотношению
 >> затрат на разработку и уверенности в результате, с БОЛЬШИМ отрывом от
 >> конкурентов.

 DK> Я хотел бы высказать сомнение в большом отрыве Haskell от
 DK> Ocaml. Последний видится мне весьма живым проектом.

Ну, Ocaml я просто не знаю.  В смысле, видеть видел, но не работал.
Может, и да.

 DK> За время работы с ним меня приятно удивило после Haskell:

 DK> 1) Позволяет более просто комбинировать функциональное и императивное
 DK> программирование: не надо изворачиваться монадами, чтобы добиться
 DK> последовательного выполнения команд.

Я Вам открою, наверное, страшную тайну: в хаскеле вообще невозможно
добиться последовательного выполнения команд, кроме как через
зависимость "результат A нужен для вычисления B".  В монадах на сей
предмет нет ничего волшебного.  Даже в монаде IO.  Я когда-то, посмотрев
на ее реализацию и осознав, что она такое, ухитрился даже нарисовать
тест, который это демонстрировал.

И, соответственно, спрошу: а зачем, собственно, добиваться
последовательного выполнения никак не связанных между собой команд?

 DK> 2) Позволяет таки определять полиморфные функции. Да, это нарушение
 DK> системы типов, но если этим не злоупотреблять, то это даже удобно.

Какого именно вида полиморфных функций?  В хаскеле их минимум два (а с
generics, пожалуй, и все три).

 DK> Я в своё время с Вашей подачи пытался взять Haskell наскоком. Увы, он
 DK> меня расстроил по целому ряду причин. Если хотите, могу рассказать.

Было бы интересно.  Я его и сам осваивал небыстро, и кое-что открываю в
нем до сих пор, пятый год уже.  (Кое-что из этого, впрочем, и
появилось-то в этом году.)

Ответить