Я довольно скептически отношусь к функциональщине. Я понимаю, когда речь идёт о Erlang'е, так как это позволяет эффективно распараллеливать задачи. Я понимаю, когда ни разу не программист, а математик считает что-то на коленке. Но я не понимаю людей, которые пишут на нём бизнес-логику. Совершенно безумная стоимость поддержки и разработки и абсолютно нечитаемый код в сравнении с любым ООП/процедурным языком.