OberonCore
https://forum.oberoncore.ru/

Критика Common Lisp
https://forum.oberoncore.ru/viewtopic.php?f=61&t=6346
Страница 1 из 1

Автор:  budden [ Суббота, 02 Февраль, 2019 10:41 ]
Заголовок сообщения:  Критика Common Lisp

Вот горазды C++ критиковать. А попробуйте Common Lisp покритиковать. Вроде Common Lisp - сложный, а Оберон, якобы, простой. Но я обнаружил, что с точки зрения простоты CL по нескольким направлениям даёт фору вашему Оберону. Кроме того, некоторые вещи, которые вы тут обсуждаете как спорт высших достижений (например, остановка всех тредов для сборки мусора), в лиспе являются обыденной рутиной.

То, что Common Lisp сегодня маргинален, неважно. Вы же цените Оберон не за популярность, а значит, имеет смысл сравнивать и с другими непопулярными технологиями. Достаточно того, что Common Lisp был популярен в прошлом. Хотя если мы рассмотрим AllegroCache, то это технология, которая уникальна и на сегодняшний день (посмотрите список клиентов). Кроме того, CL летал и на Марс, и на Хаббле он планирует наблюдения, и Постгрес был раньше на нём написан, и пресловутая JADE HELM написана на лиспе. Оберону до такой «непопулярности» ещё очень и очень далеко.

Также явно будет интересным сравнить EMACS и проект Оберон как подход к интерфейсу. В них есть общее - например, буфер scratch - это примерно то же, что ваш "текст как интерфейс", а команды там ЕМНИП тоже без параметров (хотя есть prefix arguments, этакий костылик). В EMACS мозаичный оконный менеджер, как и в проекте Оберон.

Автор:  budden [ Суббота, 02 Февраль, 2019 19:23 ]
Заголовок сообщения:  Re: Критика Common Lisp

Ошибочка вышла - эта система называется AllegroGraph. Я просто перечислю некоторых клиентов вот с этой страницы: https://franz.com/agraph/success/

Pfizer, Lockheed Martin, Bank of America, Uspto.gov, NASA, XEROX, SIEMENS, Adobe, SAP, CISCO, AT&T.

Твиттер почему-то не упомянут, хотя он тоже. Зато NSA, более известная в России как АНБ, упомянута :lol:

Автор:  Trurl [ Суббота, 02 Февраль, 2019 19:55 ]
Заголовок сообщения:  Re: Критика Common Lisp

Lisp это же КДКС.

Автор:  Илья Ермаков [ Суббота, 02 Февраль, 2019 19:57 ]
Заголовок сообщения:  Re: Критика Common Lisp

LISP концептуально ценен.

Но - не статически типизированный язык => лаборатория, не production.

Простых и элегантных языков достаточно много. Лисп, Форт, Смоллток - примеры компактных базисов.

Но это динамика. Значит, это два минуса: ад рефакторинга для промышленной разработки и быстродействие достигается только сложным, недоверенным JIT.

Компактных статически типизированных, кроме Паскаль-семейства...
Ocaml неплох. Но уже сложнее по рантайму, по концепциям - ну и большой вопрос, как он терпит раздельную трансляцию модулей (а он ориентирован именно на эффективную компиляцию, это большой плюс).
Eiffel... Тоже вопросы.

А Оберон как раз в плане экосистемы, сред прямо впитал опыт и Лиспов, и Смоллтоков.
Как бы, влияние Смоллтока и Paolo Alto на Вирта, который там стажировался, никто никогда и не отрицал.
Только Вирт потом делал промышленные статически типизируемые эффективно компилируемые языки и ОС на их базе (Modula-2, Oberon), воплощая на уровне рантайма и экосистемы все плюшки, увиденные им в интерпретируемых экспериментальных языках.

Напомню, что в 80-х Модула-2 как раз была мейнстримом и индустриальным языком дальше некуда (как в СЭВ, так и на Западе - половина IBM AS\400 написана на ней), а Лиспы и Смоллтоки были не по плечу тому железу для серьёзных применений. А когда стали по плечу - их нишу уже сожрал ЖабаСкрипт ))

Автор:  Илья Ермаков [ Суббота, 02 Февраль, 2019 19:58 ]
Заголовок сообщения:  Re: Критика Common Lisp

По месту Оберона среди языков и технологий посмотрите мои доклады с Оберон-конференции:
https://oberoncore.ru/oberonday/2018

Автор:  budden [ Понедельник, 04 Февраль, 2019 10:32 ]
Заголовок сообщения:  Re: Критика Common Lisp

> Но - не статически типизированный язык => лаборатория, не production.
Это, возможно, ваши пожелания, но не реальность. Телескоп Хаббл и сайт президента США (то ли при Клинтоне, то ли при одном из Бушей) - это всё ещё не продакшен? А как насчёт gensym g2?
Это во-первых. Во-вторых, статическая типизированность - это количественная, а не качественная характеристика. Я просто упомяну наследование, ANYREC и перечисления в Оберонах как пример. Это - три явления динамической типизации. Сравним с Адой? Где NEW INTEGER? В лиспе тоже есть и статически выписанные проекты, и статическая типизация в каком-то количестве тоже присутствует.

> ад рефакторинга для промышленной разработки
В системе типов лиспа есть перечисления и типы "целое от 0 до 100500". Компилятор будет как-то (пусть не всегда совершенно) пытаться рассуждать об этих типах. Но в Обероне таких типов нет в принципе. Это во-первых. Во-вторых, рефакторинг необязательно связан с типами. Например, автоматизированные операции "переименовать функцию" и "вынести кусок в отдельную функцию", "перенести функцию в другое пр-во имён" в лиспе при определённых ограничениях на код вполне достижимы, хотя в реальности я их не видел. Ну так я их и в Обероне не видел. Там, где функция вызывается по строковому имени, лисп и оберон находятся в одниково плохом положении. Ведь и в Обероне можно хранить текст, ссылающийся на имя функции, где-то в интернете, или получать его путём вычислений. Поэтому автоматически переименовать экспортируемую процедуру в Обероне, вообще говоря, невозможно, как и в лиспе. Да и вообще любая динамическая диспетчеризация создаёт проблемы для рефакторинга, а в ООП версиях Оберона (ББЦБ, А2) её много.

> быстродействие достигается только сложным, недоверенным JIT.
Так скажем, при тотальной стат. типизации быстродействие действительно достигается легче. Ещё, наверное, важно то, что в лиспе есть только указатели (он же _проще_), а в Обероне есть и значения, и указатели - гигантское усложнение. Зато можно больше вещей хранить на стеке. В лиспе тоже есть хранение на стеке, но оно достигается только за счёт рассуждений компилятора и особых деклараций. В целом его в лиспе гораздо меньше.
Насчёт доверенности - доверенность достигается в ходе процесса верификации, ему можно подвергнуть разные компиляторы. Доверенный CL вряд ли существует. Но и ББЦБ тоже вряд ли является доверенным (я же внутрь заглядывал и видел, как там модуль SYSTEM во все поля :) )

> Как бы, влияние Смоллтока
К слову сказать, кажется, что Смолтолк гораздо живее лиспа на сегодня. Удивительное дело. И живее Оберона, наверное. Это я сужу по количеству контрибьютеров в Pharo 7.0 (75 человек и 2100 issues). Это просто фантастическая активность! Я прямо думаю, не ошибся ли я, выбрав лисп, а затем оберон?

Автор:  Info21 [ Понедельник, 04 Февраль, 2019 17:12 ]
Заголовок сообщения:  Re: Критика Common Lisp

budden писал(а):
просто фантастическая активность! Я прямо думаю, не ошибся ли я, выбрав лисп, а затем оберон?
Читаю Ваш пост -- и тоже про это думаю.

Автор:  budden [ Понедельник, 04 Февраль, 2019 18:25 ]
Заголовок сообщения:  Re: Критика Common Lisp

Чем Common Lisp отличается от С++?

С++ своим доминированием упрямо мозолит глаза, и поэтому с ним нужно считаться. А Lisp скромно сидит в уголке. Поэтому достаточно прогнать с глаз долой представителей культуры лиспа и всё вроде бы встанет на свои места.

Но разница ещё и вот в чём: критикуя С++, вы критикуете плохое. Вас это не обогащает ничем.
И в этом нет никакой чести.

Критикуя Lisp, вы критикуете хорошее. Вас это могло бы обогатить. Настоящий рыцарь может порубить парочку крестьян, но чести в этом нет. Честь - это победить дракона.

Идти ли этим путём или нет - это уже ваш выбор. Думается, я в этой теме сказал достаточно, теперь мне некогда. Надеюсь, тут ещё найдутся люди, которые что-нибудь интересное напишут.

Автор:  Info21 [ Понедельник, 04 Февраль, 2019 20:24 ]
Заголовок сообщения:  Re: Критика Common Lisp

Лично я С++ не критикую, а констатирую, что это мракобесное гуано, каких свет не видывал.
Мракобесие, т.е. obscurantism в точно смысле слова.

Лисп я покритиковал, когда бросил его лет тридцать назад.

И главное: досаждают не лисперы, а плюсоиды.

Автор:  Сергей Оборотов [ Пятница, 08 Февраль, 2019 08:35 ]
Заголовок сообщения:  Re: Критика Common Lisp

Раздельная трансляция модулей у него имеется, однако.

Автор:  Илья Ермаков [ Пятница, 08 Февраль, 2019 14:11 ]
Заголовок сообщения:  Re: Критика Common Lisp

Сергей, независимая, а не раздельная - это разные вещи...

Автор:  Сергей Оборотов [ Суббота, 09 Февраль, 2019 02:14 ]
Заголовок сообщения:  Re: Критика Common Lisp

Одно другого не исключает там.

Автор:  Валерий Лаптев [ Вторник, 05 Март, 2019 08:04 ]
Заголовок сообщения:  Re: Критика Common Lisp

Info21 писал(а):
И главное: досаждают не лисперы, а плюсоиды.

Не плюсоиды вас раздражают, а их растопыренные пальцы... :)

Автор:  Info21 [ Вторник, 05 Март, 2019 21:11 ]
Заголовок сообщения:  Re: Критика Common Lisp

Валерий Лаптев писал(а):
Info21 писал(а):
И главное: досаждают не лисперы, а плюсоиды.
Не плюсоиды вас раздражают, а их растопыренные пальцы... :)
Если быть совсем точным, то мозг. Который и пальцы растопыривает.

Автор:  Валерий Лаптев [ Четверг, 07 Март, 2019 08:50 ]
Заголовок сообщения:  Re: Критика Common Lisp

Я все думаю - что со мной не так?
С++ люблю, но пальцы не растопыриваю.
Потому как в студенчестве изучал Фортран?
Но Дейкстра сказал, что студентов, изучавших Бейсик (Бог миловал) и Фортран невозможно научить программированию :)
типа мозг искалечен необратимо... :mrgreen:

Автор:  Пётр Кушнир [ Четверг, 07 Март, 2019 09:07 ]
Заголовок сообщения:  Re: Критика Common Lisp

Если сиплюсплюсник не растопыривает пальцы - это само по себе растопыривание пальцев)

Автор:  Валерий Лаптев [ Четверг, 07 Март, 2019 16:13 ]
Заголовок сообщения:  Re: Критика Common Lisp

Пётр Кушнир писал(а):
Если сиплюсплюсник не растопыривает пальцы - это само по себе растопыривание пальцев)

:mrgreen: :mrgreen: :mrgreen:
!!!

Автор:  Info21 [ Пятница, 08 Март, 2019 05:05 ]
Заголовок сообщения:  Re: Критика Common Lisp

Не ну если чел сидит себе тихо в уголку и любит плюсы -- запрещать такое, конечно, нельзя, в отличие от растления малолеток.

Автор:  Kemet [ Пятница, 08 Март, 2019 17:09 ]
Заголовок сообщения:  Re: Критика Common Lisp

Валерий Лаптев писал(а):
Но Дейкстра сказал, что студентов, изучавших Бейсик (Бог миловал) и Фортран невозможно научить программированию :)
Если Дейкстра не изучал Бейсик и Фортран, то не мог адекватно судить о предмете, если изучал, то его мозг был безнадежно испорчен, и он, опять же, не мог адекватно судить о предмете, вот такая вот загогулина, понимаишь

Автор:  Пётр Кушнир [ Пятница, 08 Март, 2019 17:17 ]
Заголовок сообщения:  Re: Критика Common Lisp

Суждение не о Фортране, а о студентах.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/