Про фп ище
kouzdra — 23.06.2014 У ФП на сам деле преимуществ два - первое - сильно более удобная и компактная нотация - это само по себе не революция, но сокращение объема кодирования в 2-3 раза довольно сильно повышает и производительность труда и управляемость кода. Другое дело, что индустрии пока проще не повышать производительность, а развиваться экстенсивно.А второе более важное - c программами на функциональных языках легко работать формальными методами - поскольку модель прозрачная, строгая типизация дает массу информации о том, что может быть, а главное - чего быть не может.
А в pure functional языках еще убрана чуть не главная головная боль всех оптимизационных и верификационных средств - неявные зависимости по изменяемым данным. Примера для - в чем плюс erlang - язычок сам по себе кривоват - именно в том, что pure functional.
Что в частности означает, что перекидывание процесса на другую машину (сколь угодно удаленную) требует лишь разового копирования замыкания. тогда как в большинстве других языков - абю. Все процессы сидят на общем массиве мутирующих данных и фиг ты чего куда выкинешь автоматически - без подсказок программиста и специальной заточки кода под это.
Ну и еще что отсутствует необходимость постоянно обкладывать семафорами все мутации потенциально разделяемых данных теряя на этом перформанс и ловя глюки - но это-то в принципе решается везде использованием pure functional структур - тут просто язык энфорсит эту политику
|
</> |