Недавно я начал работу над FP после прочтения большого количества блогов и сообщений о преимуществах FP для одновременного выполнения и производительности. Моя потребность в FP во многом зависит от приложения, которое я разрабатываю. Мое приложение - это инжектор данных на основе данных в другую подсистему, где время очень важно (около 2 миллионов транзакций в секунду). У меня есть пара таких подсистем, которые необходимо протестировать. Я серьезно рассматриваю возможность использования FP для своего parallelism и хочу принять правильный подход. Многие сообщения на SO говорят о недостатках и преимуществах Scala, Haskell и Clojure для языковых конструкций, библиотек и поддержки JVM. С точки зрения языка я в порядке, чтобы выучить любой язык, пока он поможет мне достичь результата.
Некоторые сообщения одобряют использование Haskell для соответствия шаблонов и простоты языка, основанные на JVM FP lang имеют большое преимущество в отношении использования существующих java-библиотек. JaneStreet - большой сторонник OCAML, но я действительно не уверен в поддержке разработчиков и помогает форумам OCAML.
Если кто-то работал с обработкой таких больших данных, поделитесь своим опытом.