В завершение... (если не станетскучно и ещё какой язык в сравнение не вкину).
Мне приходит много отзывов на эту ... публикацию (обобщённо "отзывов": в форумах, по почте, в личных разговорах...).
Большая ошибка читающих в том, что они обращают
ключевое внимание на сравнение производительности, скорости.
А большая ошибка пишущего (меня
) в том, что он вообще включил сравнение производительности в текст.
Производительность во всём этом деле вообще меня не интересовала ... и возникла вообще как побочный эффект любопытства
, на самом последнем этапе... бес попутал. Но все почему-то обратии внимание именно на эту, самую не значащую, сторону... :o
А интересно сравнивать именно
философию существующих языков, даже не синтаксис ... хотя синтаксис отчасти разъясняет философию.
15 языков вовсе не обязательны, чтобы на них писать (хотя программист ... или так себя называющий :D ... знающий 1 язык? - это как-то смешно ... "дружные шеренги PHP-программистов равняйсь" - это сильно убого ::)).
"Чужие" языки хороши тем (взгляд на них), что они позволяют перенести их приёмы в свой родной язык.
И тут по случаю, чтобы разрядить обстановку, я расскажу казус их жизни ... реальную вещь:
Когда-то ... но это очень давно ;) ... мне было поручено написание специализированной САПР системы, на PL/1 ... в совершенно нереальные, дикие сроки.
А я тогда "зачитался" языком APL ... который никогда, кстати, не был реализован вообще ни в одном виде в русскоязычном пространстве - он требует совершенно специальной клавиатуры.
Но из APL я позаимствовал в PL/1 массивные операции, массивы как элементарный базовый тип проекта + функции высших порядков над ними (редукция и т.п.). Оказалось что в PL/1 это всё выразимо ... только ним так никто не пользуется.
САПР сделали и сдали в совершенно нереальные сроки... в несколько месяцев.
Ним потом, как public-проектом, пользовались не в одном городе России, много лет потом шли отзывы из совершенно неожиданных мест: Ленинград, Новосибирск, Томск, Тырнауз, ... (я уже давно занимался другими вещами и забыл про тот проект).
Вот
главный смысл рассмотрения "чужих" языков программирования.
В этом смысле функциональное программирование вовсе
не является составной возможностью Ruby или Python - о чём много пишут. Оно просто оказалось
выразимо в терминах этих языков, и тут же было подхвачено частью пользователей.