Таки почему при всех своих достоинствах он так непопулярен? Зачем делались и делаются другие языки, когда всё уже давно сделано и притом лучше, ну или не хуже?
>В.С.Луговский на форуме SQL.RU: дискуссия, начавшаяся с недостатков C++, перетекла на функциональные языки, потом все остальные, затем на состояние отрасли в целом (искусственный интеллект и пр.) и многое другое. Всего 66 страниц, хотя объемно и разбавлено бесполезными сообщениями, очень интересно и стоит того, чтобы быть прочитанным:
ну хорошо, но Интерфейс там таки неестественно туп. Прозреваю саемперсунство или подставу, для придания живости дискуссии и направления её в нужное русло. Хотя не суть важно, тред эпичен.
>Таки почему при всех своих достоинствах он так непопулярен? Зачем делались и делаются другие языки, когда всё уже давно сделано и притом лучше, ну или не хуже?
Почему при всех достоинствах так непопулярны нормальные ОС? Почему при всех недостатках популярен Дима Билан а не классическая музыка? Почему популярен МакДональзс? Ответ прост: 99% людей - быдло, которое будет жрать то, что им скажет дядя маркетолог.
А какие есть рейтинги, кроме TIOBE? Я знаю, что существуют проекты, где он используется, но процентное соотношение их с остальными очень мало. Почему же?
Зачем тебе рейтинги? Никак не можешь выдавить из себя способ мышления "миллионы мух не могут ошибаться" сформированый маркетологами? Если тебе нравится Лисп можешь смело его использовать.
>Я знаю, что существуют проекты, где он используется, но процентное соотношение их с остальными очень мало. Почему же?
Вообще я счиитаю, что одна из причин непопулярности лиспа (по крайней мере я не хочу писать на CL по этой причине) это огромный перегруженный устаревший стандарт. А т.к. CL считается реализацией де-факто для промышленного применения, он в основном и определяет тенденции.
>Вообще я счиитаю, что одна из причин непопулярности лиспа (по крайней мере я не хочу писать на CL по этой причине) это огромный перегруженный устаревший стандарт. А т.к. CL считается реализацией де-факто для промышленного применения, он в основном и определяет тенденции.
Назовите хоть один другой "стандартный язык для промышленого применения", стандарт которого Вы не считаете перегруженым(помимо Ц).
Описания способа выбора перегруженой функции в С++ это вобще сказка. А .НЕТ это не язык а виртуальная машина с набором библиотек. Если Вы хотели сказать Сдиез то тоже мимо касы. В меня особенно ключивое слово yield умиляет...
Это уже не говоря о том, что из перечисленого только С++ вообще ИСО стандартом является. В остальных разработчики в каждой последующей версии могут городить что им в голову взбредет.
По крайней мере его стандарт можно пролистать за вечер и читать любой код без затруднений.
Это не значит, что я хорошо отношусь к вышеперечисленным языкам, или считаю их лучше лиспа. Это просто мои размышления на тему его популярности. И, опять же, я не считаю популярность большим плюсом.
Ну хорошо. А кому невыгоден Лисп и выгодно изобретение языков? Зачем делались те-же C++, Java, .NET, не говоря уже о всех Перлах, Руби и Питонах, когда всё уже было в Лиспе? Почему основным языком для венды и кучи софта был выбран C++, например?
Лучше для чего? Для популярности лучше, чтобы big vendor написал современную модную IDE с рюшечками и автодополнением, провёл десяток конференций с лучшими умами планеты и объявил, что нынче Lisp delivers. Ну и ребрендинг не помешает, а то у большинства программистов лисп ассоциирован с кошмарами третьего курса.
Я спрашивал, что лучше - выгоднее, проще, удобнее для вендоров - разрабатывать свои языки или взять Лисп, возможно, сделав какой-то свой диалект. Почему-то, жизнь показывает, что первое.
Вот поэтому и проще. Я не говорю: лучше для конечного пользователя (aka программиста). Не надо оглядываться на совместимость, from ground up всегда проще всё делать, особенно если есть опыт. Недаром русские программисты(tm) всегда всё переписывают.
>А кому невыгоден Лисп и выгодно изобретение языков? Зачем делались те-же C++, Java, .NET, не говоря уже о всех Перлах, Руби и Питонах, когда всё уже было в Лиспе?
Лисп требует высокого уровня подготовки программистов. Существует мнение(далеко не все его разделяют, но оно почему то свойствено многим ключевым людям), что сотня дешевых индусов с жавой будут продуктивнее чем пять-десять выпускников МИТа с Лиспом. В любом случае следует помнить, что Жавы-точкаНЕТы нужны в первую очередь манагерам, а не программистам. Считается, что индусу легче разобратся в миллионах строк монотонного тупенького императивного кода, при этом ООП и GC пытается помешать индусам наломать дров. Манагеру таким образом одеспечивается некоторая степень уверености, что если завтра половина сотрудников свалит в другую контора, а оставшаяся половина погибнет в автокатастрофе, то будет относительно легко найти новую сотню обезьян.
Тем не менее рост популярности Руби-Пистонов и даже добавление F# в ВС2008 явно свидетельствуют, что более выразительные языки, заимствовавшие многие фишки из ФП все таки нужны даже в "конвеерном" клепании софта, так что знания в этой области однозначно не будут лишними, если ты так печешся о финансовой отдаче.
>Почему основным языком для венды и кучи софта был выбран C++, например?
Когда принимались эти решения компы были не той производительности, что-бы писать прикладной софт на высокоуровневом языке. Поэтому был выбран "PDP-11 ассемблер, который считает себя объектно-ориентированым языком программирования".
Чувак это маркетинг. Зачем например МС поддерживать Сановский лисапед Жаву если навалом пеара можно втюхать всем точкаНЕТ, а потом продавать МС-ВизюальСтудио-УберТеамСьют за 5к. Им не нужно, что-бы у тебя был выбор средств разработки. Живем мы в таком мире... Это как спрашивать "зачем МС сделали венду, если уже давно был Юникс? Лисапед же!".