Привет!
Какого-то серьезного опыта с функциональными языками программирования у меня нет, но в последнее время я интересуюсь этой областью и пока не сделал выбор в пользу того или иного языка.
- Haskell — чистый функциональный, библиотек много, развитая инфраструктура, высокий порог вхождения. Компиляторы, верификаторы, финансы.
- SML/OCaml — классика функционального программирования, относительно низкий порог вхождения. В индустрии применяются жостаточно редко: компиляторы, верификаторы, финансы, числодробилки.
- Scala — гибридный язык, развитая система типов, интероп с джавой. Высокий порог вхождения. Финансы, корпоративный сектор.
- Agda/Coq — мощная система типов, экстрация программ в разные языки, верификация. Компиляторы, верификаторы.
- F# — гибридный язык, дотнет/моно. Корпоративный сектор.
А теперь вопрос: с точки зрения изучения теории типов и прочего матана, который стоит за языками программирования, какой язык лучше взять?
Перемещено mono из talks