Другие языки программирования и технологии

Почему функциональные языки не востребованы?

Очень странно, я посмотрел Erlang.Мне кажется он точно должен быть на 1 странице TIOBE
в чем же ихняя проблема?
Айдар Искаков
Айдар Искаков
24 328
Если юмористически то советую прочитать такой замечательный текст как "Как острелить себе ногу на различных языках программирования" - там как раз расказано почему у функцианальных языков ниша исключительно научная
Михаил Горячевских
Михаил Горячевских
35 594
Лучший ответ
Айдар Искаков Нашел только про прикол с рекурсие
Айдар Искаков Нашел про эрланг но там прикол с супервизором. Не вижу ничего плохого.
А про хескел шутка что типо надо быть умным
Недостатки функционального программирования вытекают из тех же самых его особенностей. Отсутствие присваиваний и замена их на порождение новых данных приводят к необходимости постоянного выделения и автоматического освобождения памяти, поэтому в системе исполнения функциональной программы обязательным компонентом становится высокоэффективный сборщик мусора. Нестрогая модель вычислений приводит к непредсказуемому порядку вызова функций, что создает проблемы при вводе-выводе, где порядок выполнения операций важен. Кроме того, очевидно, функции ввода в своем естественном виде (например, getchar из стандартной библиотеки языка C) не являются чистыми, поскольку способны возвращать различные значения для одних и тех же аргументов, и для устранения этого требуются определенные ухищрения.

Для преодоления недостатков функциональных программ уже первые языки функционального программирования включали не только чисто функциональные средства, но и механизмы императивного программирования (присваивание, цикл, «неявный PROGN» были уже в Лиспе). Использование таких средств позволяет решить некоторые практические проблемы, но означает отход от идей (и преимуществ) функционального программирования и написание императивных программ на функциональных языках. В чистых функциональных языках эти проблемы решаются другими средствами, например, в языке Haskell ввод-вывод реализован при помощи монад — нетривиальной концепции, позаимствованной из теории категорий.
https://ru.wikipedia.org/wiki/Функциональное_программирование#.D0.9D.D0.B5.D0.B4.D0.BE.D1.81.D1.82.D0.B0.D1.82.D0.BA.D0.B8

А вообще сейчас многие ЯП "функционализируются". На JS сейчас не найдешь библиотеку без функциональных заморочек. Python довольно много делает функционально. В C++11 и Java8 наконец добавили лямбды.
Вилен Симонов
Вилен Симонов
94 712
Айдар Искаков Сборка мусора это ладно, а причем тут кстати getchar?
Каким боком Erlang к функциональным относится? Или для тебя иммутабельности достаточно, чтобы назвать язык "функциональным"?
Леша Васечкин
Леша Васечкин
2 948
Айдар Искаков Кусочком бока, ну я его привел как понравившийся мне
потому что нет библиотек, ide и т. д. неужели непонятно? совсем люди поехали
Sacha Klimov
Sacha Klimov
204
Айдар Искаков Как же меня бесят такие идиоты которые не могут посмотреть а есть ли библиотеки? Ты хоть знаешь насколько много всего на хескель например? Даже есть куча фреймворков для веба
Айдар Искаков Это наверное не похоже на IDE?
Первая картинка в гугле