Последние полгода-год видно не сказать чтобы неожиданный, но значительный рост интереса к ФЯ. Поэтому я тут решил немножко пошариться по всяким сообществам, блогам и форумам и оценить, так сказать, динамику. Выходит вот что:
Haskell
Мейнстримом, понятно, ему не быть, слишком много сложных экспериментальных фич, язык, крутая learning curve -- учитывая все это, можно сказать что хаскель уже популярен донельзя. Кое-где даже встречается в объявлениях о поиске сотрудников, у "них" вот Credit Suisse его использует. Pugs тоже сыграл большую роль в том что название "хаскель" слышали даже не очень сильно интересующиеся вопросом товарищи. Насчет того чтоб он как-то серьезно применялся в России -- не слышно и не видно.
O'Caml
Окемлу лет тоже уже много, так что резкие всплески популярности он уже пережил -- самый прагматичный язык, с замечательным оптимизирующим компилятором. В Jane's Capital вроде как его активно любят (почитать можно тут). Рекрутеры продвинутые тоже знают. Вот тут люди в Москве на нем даже игры разрабатывают.
F#
Бурно развивающийся диалект Ocaml'а для .net. Точнее от ocaml он уже довольно-таки далеко. Огромный плюс в том что засчет использования .net нахаляву получаем интеграцию с C#, гуи и IDE. В этом году выходят сразу три книжки по F#, активно пиарятся две консалтинговые конторы специализирующиеся на F#: вот и вот. ИМХО вполне себе положительный знак. Программеров на F# правда пока никто не ищет.
Scala
Новый язык, на базе JVM, поддерживает кучу интересных фишек, типа GADT, ОО модель плотно интегрирована с функциональщиной. Больше всего сейчас слышно про веб-фреймворк на scala -- lift. В качестве killer app приводится клон вебдваноль сервиса twitter в 800 строчек, вроде как способный обслуживать до миллиона юзеров с одного сервера. В общем, по мне так -- язык просто замечательный, даже приятнее окемла.
Становится все популярнее и популярнее -- у меня в google alerts уже половина упоминаний scala относится к языку программирования, а не к одноименному оперному театру. Полгода назад показатель составлял 20%.
Erlang
Эрлэнг это, кажется, наиболее успешный функциональный язык после excel'я -- потому что изначально создавался для решения практических задач, и рассчитан на относительно низкий порог вхождения для обучаемых программистов. Killer App из мира open source это jabber-сервер ejabberd. Ну и хрестоматийный пример про маршрутизатор AXD301 на эрланге.
В плане работы -- есть несколько организаций в России которые, похоже, используют Erlang вполне промышленно. Судя по объявлениям о приеме на работу в Питере это StanaPhone (российское отделение крупной американской компании, разрабатывающей VoIP приложения). А в Москве прям сейчас ищет Erlang-программистов довольно крупная медиа-компания A1.
13 comments:
Nemerle забыл
Чудесноу (:
Я прямо сейчас веду проект на F#, на работе, все дела, но это была инсайдерская идея, в целом всем похрен на чем мы будем писать.
> Я прямо сейчас веду проект на F#, на работе, все дела, но
> это была инсайдерская идея, в целом всем похрен на чем мы будем писать.
Оо замечательно :) А много ли нашлось девелоперов?
F# ваще отличный готовый к рельному применению язык. Я на нем диплом писал :)
Только вот сцуко в гугле искать по слову F# трудно.
>Nemerle
А Немерле совсем не так популярен как вышеперечисленные. Похоже, за пределами форума рсдн и собственно разработчиков в Польше его мало знают (см. google trends по nemerle). Сайт уже год не обновляется, занимается им, я так понимаю, пара человек в свободное время. Ну то есть он конечно хороший, но до промышленного применения ему далеко, и даже никакого движения в эту сторону не видно )
А я в метаниях, на чем диплом писать, честное слово.
Хочется на scheme, но для этого сначала надо написать ее интерпретатор под Inferno (-:
Разработчиков нашлось двое (:
Контора непровильная, нас тут мало.
*непрофильная, миль пардон
2Тру Программист:
А что за третья книга по F# - я что-то не видел ее анонса.
По Ерлангу летом выйдет книга, заказы уже принимаются на амазоне.
По поводу языков - забыты Lisp/Scheme, а вот Lisp jobs постятся регулярно, и можно найти такую работу в россии. Я работал в компании, в которой активно писали на Scheme коммерческие продукты, и там рады программистам на этом языке :-)
>А что за третья книга по F# - я что-то не видел ее анонса.
F# for scientists (http://www.ffconsultancy.com/products/fsharp_for_scientists/index.html), там даты точной нету правда.
Про лисп и scheme я не стал писать потому как они во-первых не так сильно позиционируются как функциональные языки, а во-вторых тут отдельный пост надо писать -- слишком много получается примеров промышленного использования :)
Scheme, как раз, очень даже функциональный язык.
Собственно для того ее и придумывали.
Гхм да, насчет scheme был неправ..
F# ваще отличный готовый к рельному применению язык. Я на нем диплом писал :)
А чем окемл не устроил? Или дот-нет гуй понадобился? )
BTW: увидев в одном из примеров на F# слово null пришел в ужас и понял, что даже если бы оно было не microsoft only, то вряд-ли стал бы его использовать.
дот-нет гуй это очень хорошо, да. и вообще дот-нет это замечательно -- по причине несложного интеропа с C#. И еще в F# list comprehensions есть. Поэтому я F# предпочту окемлу если что :)
А диплом мой был не очень большой и сложный в части софта, поэтому получилось, что он реально на некотором общем подмножестве F# и окемла написан.
насчёт применения Haskell у нас спроси thesz, они его вовсю используют кажется (в СПб).
> насчёт применения Haskell у нас спроси thesz, они его вовсю используют кажется (в СПб).
Иван Тарасов, какие люди :)
> BTW: увидев в одном из примеров на F# слово null пришел в ужас и понял, что даже если бы оно было не microsoft only, то вряд-ли стал бы его использовать.
Причина использования null в F# -- Common Type System (и, в частности, интероп с C#).
Однако многие типы F# разработаны таким образом, чтобы избежать использования null.
Post a Comment