LINUX.ORG.RU
Ответ на: комментарий от realsmart

> Давайте вспомним постановку задачи, там чётко задана команда сервера "world", которая присылает текущее состояние мира.

Давайте вспомним, с чего вообще начался спор. Было указано, что Лисп начинает показывать свои преимущества только на достаточно крупных задачах, потому как на программах класса "Hello, world" он даже хуже, чем другие быд^Wязыки.

> Так вот, мой сервер и клиент не делают лишних (ненужных) телодвижений, а просто используют установленный протокол.

Увы, в реальном мире системам свойственно эволюционировать, и даже аппеляция к согласованному и подписанному техническому заданию при спорах с заказчиком не всегда спасает. Речь идет о том, что на Лиспе проще писать программы, способные эволюционировать в соответствии с усложнением требований предметной области. Опять же, задача была выбрана, чтобы показать преимущества развивающегося DSL. По-моему, это было отлично продемонстрировано.

Открою по секрету, что небольшое изменение лисп-программы позволит роботу исполнить удаленно _любую_ лисп-программу, в том числе с ветвлениями и циклами. То есть, простота DSL тут вяжется с встроенной мощью Лиспа, о чем тоже говорили вначале.

Я бы даже сказал так, что многие фичи лисп-программ очень часто получаются исключительно как "побочный продукт" решения основной задачи. То есть, вроде бы и не собирался наделять программу этим свойством, и вдруг обнаруживаешь, что она и так может. Кайфовое ощущение :-). Нужно просто немножко отойти от парадигмы программирования "под заказ" :-).

> клиент после каждой команды движения посылает команду "world", причём не для себя, а для человека за монитором, чтобы ему удобно рассматривать было.

Вот лично мне, как человеку, было жутко неудобно смотреть на гору мусора, который выдает робот при своей работе. Достаточно было бы посмотреть только начало и конец операции, а также несколько контрольных точек, в основном, на поворотах. Я не утверждаю, что есть только два способа -- мой и неправильный. Я утверждаю, что в реальных задачах зачастую нужен гибкий подход и кустомизация решения под конкретного пользователя.

> В общем, у меня сам клиент решает, когда показать состояние мира человеку.

Когда компьютер начинает принимать решения за человека, то получается техноужыс вроде терминаторов, матриц и прочих оффтопиков XP ;-). Лично я люблю сам определять уровень получаемой информации.

> Могу показывать мир только по четвергам ночью в полнолуние ;)

Важно, чтобы это умел пользователь, которому Вы предлагаете свое творение.

> А вот на счёт последнего Вашего абзаца... Вы уж меня извините, но какая-то белиберда бесполезная... Сплошные лишние сущности.

Хум хау. Кому и станки с ЧПУ -- это сплошные лишние сучности. Однако в жизни обычно чаще бывает наоборот...

> Это всё реализуется проще, даже не выходя за рамки стандартного протокола.

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

eugine_kosenko ★★★
()
Ответ на: комментарий от eugine_kosenko

Так Вы скажите, что сделать-то нужно, а? Вы уж определитесь с задачей. А то делаем одно, потом небыдло-лисп зилот сплоховал, ищет оправдания, а виноваты, понятно, быдлоязыки и узколобые людишки.

realsmart
()
Ответ на: комментарий от realsmart

> Так Вы скажите, что сделать-то нужно, а?

Да успокойтесь Вы :-). Можете считать что на отдельно стоящей учебно-тренировочной задаче пока что Питон с Окамлем сделали Лисп :-).

> Вы уж определитесь с задачей. А то делаем одно, потом небыдло-лисп зилот сплоховал, ищет оправдания, а виноваты, понятно, быдлоязыки и узколобые людишки.

Зря кипятитесь. В жизни оно так и бывает чаще всего: заказчик сам не знает, чего хочет, и только после пилота к нему внезапно приходит озарение, как нужно было сделать. Как пишется в одной умной книжке, "сначала проектируют как сарай, потом делают сарай, а внедряют уже как небоскреб". Щас тянем уже три таких "быдлопроекта" и на горизонте еще три отчетливо прописываются. А шо поделать -- это жизнь :-).

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

Вот и получается, что лично для себя я вынес понимание того, что такое DSL и как макросы могут существенно сократить код (в одном случае) и повысить функциональность (в другом). Вы, как я понял, вынесли понимание того, что Лисп сосет. Ну это уже suum quique :-).

Наконец, позволю себе заметить, что переход на личности слегка не красит оппонента. Вполне вероятно, что у Вас есть опыт написания сетевых приложений, который Вы успешно применили. Понятно, что я в этом вопросе сосунок по сравнению с Вами. С другой стороны, если бы взяли более близкую мне задачу синтаксического/лексического анализа, то все могло сложиться совсем по другому. Ведь аналог моей мерялки на Питоне я пока что не видел ;-).

Все это, как говорится, не флейма ради, а справедливости для...

eugine_kosenko ★★★
()
Ответ на: комментарий от eugine_kosenko

> Для меня ведь этот спор не способ вьюношеского самоутверждения, а попытка обтрусить незнакомый язык в экстремальных ситуациях с целью ознакомления.

Кстати, я только сейчас обратил внимание, что я для экстрима еще и экзотические структуры данных выбрал. Если в субботу пробьет, попробую портануть Ваш алгоритм на более классических структурах. Не боитесь, что программка на Лиспе и покороче может стать? ;-)

eugine_kosenko ★★★
()
Ответ на: комментарий от eugine_kosenko

>Можете считать что на отдельно стоящей учебно-тренировочной задаче >пока что Питон с Окамлем сделали Лисп :-).

OCaml скорей всего будет выполняться шустрее, но Питон в императивном стиле более краток. Лисп с оптимизациями наверняка приблизится к OCaml по всем параметрам.

anonymous
()
Ответ на: комментарий от anonymous

Народ может кто шуканет сюда народ из fido7.ru.lisp? А то больно интересно читать, только примеров маловато.

anonymous
()
Ответ на: комментарий от anonymous

Да и еще вытащите тему в наиболее обсуждаемые на 1 страницу, а то искать замучаешься.

anonymous
()
Ответ на: комментарий от eugine_kosenko

> Было указано, что Лисп начинает показывать свои преимущества только на достаточно крупных задачах, потому как на программах класса "Hello, world" он даже хуже, чем другие быд^Wязыки.

Однако, никто это реальным опытом подтвердить не может. Ну кроме viaweb.com естественно (хотя есть и контрпример: reddit.com). Я тут спрашивал про реальные проекты на Лиспе, ни у кого не было крупных проектов на лиспе.

Т.е. преимущества лиспа проявляются только на крупных проектах, которых не существует :-)

redvasily
()
Ответ на: комментарий от eugine_kosenko

> Да успокойтесь Вы :-). Можете считать что на отдельно стоящей учебно-тренировочной задаче пока что Питон с Окамлем сделали Лисп :-).

У меня есть предложение: пусть модераторы всем участникам контеста добавят по звезде за заслуги :-)

Порешим на том что победила дружба :-) И лисперы прекратят вопли про быдлоязыки, по типу этого:

Ибо воистину. Первый Язык, жемчужина посреди простых камней, и нет языков кроме Него. Скобки, в которых пустота - тело Его, мистическое двуединство кода и данных - дух Его, божественная рекурсия - сердце Его. Истинно говорю вам, избегающий света Его есть безумец, вот, свершается кара над главой его, и убогостью отмечены поделия его, подобные пустым глиняным горшкам рядом с хрустальным сосудом благодати Его. Принявший же и постигший истинный свет Его подобен прямой и отточенной стреле, чисты помыслы его и крепка рука его, и благословенны творения его, дарующие радость и утоляющие печали, ибо одухотворены духом Его и отмечены благодатью Его.

(это на lorquotes посылать не надо, это уже оттуда)

> Ведь аналог моей мерялки на Питоне я пока что не видел ;-).

Ну лично я вообще в синтаксическом анализе/разборе вообще ни в зуб копытом. Это узкоспецифическая задача.

redvasily
()
Ответ на: комментарий от redvasily

> Порешим на том что победила дружба :-) И лисперы прекратят вопли про быдлоязыки, по типу этого:

> Ибо воистину. Первый Язык, жемчужина посреди простых камней...

Вообще-то, я не лиспер. ;) Язык Лисп замечателен тем, что раз и навсегда меняет взгляд на вещи и расширяет сознание. И я всерьёз думаю, что любой приличный программист ну просто обязан с ним познакомиться, хотя бы в объёме SICP (и прорешать все задачи оттуда, как тут советовали). Иначе он будет всю жизнь заново изобретать Лисп, не подозревая об этом (с). А вот для реальных проектов современные лиспы имхо мало подходят. И несмотря на всю свою идеальность и универсальность всё равно сливают более специализированным и прагматичным "быдлоязыкам", как только дело доходит до реальных проектов.

ero-sennin ★★
()
Ответ на: комментарий от anonymous

Ну то, что OCaml будет выполнять быстрее, это понятно, а вот за то, что
бы показать, что он самый краткий я и не стал бы бороться. Все таки
нет там синтаксического сахара python'а и lisp'а, да и стандартная
библиотека мягко говоря меньше.

to realsmart:
Что-то ты слишком вскипел. Если бы ты был внимателен, то заметил бы, что
вначале eugine_kosenko также относился к lisp скептически, но в отличие
от других попробовал и сделал выводы (свои, а не насаждаемые ему из
вне). Более того свои выводы он тебе не насаждает и не проповедует - он
их просто высказал. И разговаривает вполне в спокойной манере. Я не
понимаю, что ты так вскипел? В посте от 27.10.2006 1:14:47 единственное,
что могло вам не понравится, так это высказывание про юношеское
самоутверждение, так я его могу отнести также и на свой счет, но
почему-то я спокоен. Будьте спокойней и вы, я думал, что как раз сейчас
сложилась вполне дружественная атмосфера, а вы ее зачем-то нарушаете...

Вообще-то наша маленькая задача и даже мегаанализ eugine_kosenko ничего
не доказывают и не показывают, неужели ты этого не понимал с самого
начала? Я лично взялся просто из спортивного интереса.

satanic-mechanic
()
Ответ на: комментарий от satanic-mechanic

realsmart, вы не подумайте, я действительно не имею против вас ничего...
Но перечитайте топик, там было что-то вроде от eugine_kosenko: "лисперы
пока молчат, поэтому я вот тут попробовал себя в лиспе и получилось так".
А лисперы действительно почему-то молчат. И разговор перешел вполне в
цивилизованное русло, давайте его также и продолжим. А по поводу
фанатизма, когда-то слышал примерно следующее: "на любую хорошую идею
всегда найдется неприятность в виде слишком ярых последователей".

P.S. Лисп действительно очень хороший язык. Просто разговоры про
улучшение на порядки - это чистый фанатизм. Современные языки (python,
ruby) очень сильно приблизились к нему по возможностям (я не спорю, что
достигнуть лиспа им не удастся (хотя бы в метапрограммировании из-за
лиспового синтаксиса)), поэтому лисп не дает такого преимущества, как
давал когда-то по сравнению с фортраном и C.

satanic-mechanic
()
Ответ на: комментарий от redvasily

>Порешим на том что победила дружба :-) И лисперы прекратят вопли >про быдлоязыки, по типу этого:

Что с чувством юмора ?

anonymous
()
Ответ на: комментарий от ero-sennin

>И несмотря на всю свою идеальность и универсальность всё равно >сливают более специализированным и прагматичным "быдлоязыкам", как >только дело доходит до реальных проектов.

Вот уж вывод на пустом месте.

anonymous
()
Ответ на: комментарий от redvasily

>Т.е. преимущества лиспа проявляются только на крупных проектах, которых не существует :-)

Нет, ну тут были какие-то ссылки. И я приводил ссылку на проект Prism. Вот как раз есть у них статейка по поводу применения Common Lisp в системе. Приведены свои аргументы по поводу, почему именно CL. Четыре странички, кажется. Можно ознакомиться здесь:

http://www.washington.edu/medicine/depts/radonc/research/computing/downloads/...

А крупные проекты были. В период, когда продавались дорогие LISP-машины, их было навалом. Но только это у тех, кто эти машины покупал. Т. е. внутри больших компаний и организаций. Надежды увидеть это все на столах в виде редактора Paint или MS Word (гы-гы) нет (пока).

Zubok ★★★★★
()
Ответ на: комментарий от satanic-mechanic

>А лисперы действительно почему-то молчат.

Некогда нормально поучаствовать. Тут вот кто-то два дня смог потратить на решение задачи, у меня и 2-х часов лишних нет :-((

anonymous
()
Ответ на: комментарий от anonymous

> Вот уж вывод на пустом месте.

Не на пустом месте, а на собственном опыте. :) И я считаю, что:

1. S-выражения труднее читать и понимать, чем код на том же Питоне. Во всяком случае, подавляющему большинству людей. :)

2. До сих пор нет нормальных свободных реализаций Лиспа, пригодных для моих задач.

На предыдущей работе я возился с числодробильным софтом на фортране и C++. Пытался использовать Lush, но оказалось, что он не даёт особенных преимуществ. То есть, те куски кода, где нужна производительность, приходится переписывать в стиле C. Или просто переписывать на чистом C. В конце концов, оказалось, что проще все узкие места писать на С(++) или быдлофортране, а остальное делать на Питоне. Сейчас я занимаюсь гуями на (Py)Qt, и здесь Лисп отпадает хотя бы по той причине, что нет лисповских привязок для Qt. :) А для метапрограммирования в этих задачах и Питоновских замыканий и метаклассов хватает с лихвой. Ещё возился одно время с обработкой текстов. Довольно естественным казалось писать всё это на Лиспе, потом с Лиспа я плавно перешёл на OCaml, потому что его статическая типизация в таких задачах рулит. А с него - на Питон, правда, не по доброй воле, а потому, что начальство приказало. :) Особого выигрыша по сравнению с Камлом Питон не дал, но по крайней мере, для него больше библиотек и больше программистов. :) (Как побочный проект тогда появился http://pybtex.sourceforge.net/).

Хотя, если вы приведёте мне пример реального проекта, где Лисп объективно заруливает всех остальных, буду благодарен. :)

ero-sennin ★★
()
Ответ на: комментарий от anonymous

> Народ может кто шуканет сюда народ из fido7.ru.lisp? А то больно интересно читать, только примеров маловато.

На весь топик? Не, не надо :)

yyk ★★★★★
()
Ответ на: комментарий от ero-sennin

> А вот для реальных проектов современные лиспы имхо мало подходят. И несмотря на всю свою идеальность и универсальность всё равно сливают более специализированным и прагматичным "быдлоязыкам", как только дело доходит до реальных проектов.

имхо на имхо: да, в _большинстве_ (что значит "не везде" :) - да, "сливает", но 1. по причине "отсутствия наличия" массы кодеров; 2. таки меньшим количеством законченных "батареек".

P.S. Вот если бы LW и/или ACL пошли по пути Trolltech... :) (опять имхо ;)

yyk ★★★★★
()
Ответ на: комментарий от satanic-mechanic

> А лисперы действительно почему-то молчат.

1. Отсутствие спортивного интереса. 2. Задачка таки вышла совсем небольшая - при едином алгоритме получается сравнение функциональный возможностей имеющихся либ, а не "выразительных свойств" самого языка. 3. Для меня "поддержка" "неофита" (хотя я и сам "зилотом" не являюсь) eugine_kosenko гораздо важнее, чем результат конкурса :)

> Современные языки (python, ruby) очень сильно приблизились к нему по возможностям (я не спорю, что достигнуть лиспа им не удастся (хотя бы в метапрограммировании из-за лиспового синтаксиса)), поэтому лисп не дает такого преимущества, как давал когда-то по сравнению с фортраном и C.

Ну, говорить о различиях "на порядок" можно только о численных характеристиках :) Всё, что я хотел сказать - это то, что в данный момент (на сколько я знаю) _только_ у CL есть _встроенная_ в сам язык возможность переопределения синтаксиса (read-table) и настолько мощная система макропрограммирования (действительно только благодаря синтаксису лиспа). Всё. Что конкретно эти две возможности могут дать кодеру - очень сильно зависит от самого кодера (говорю без ехидства, предвзятого отношения и каких-либо собственных претензий).

По поводу сравнения конкретных реализаций языков - очень хотелось бы сравнить скорострельность/потребление памяти питона+psyco и sbcl :)

yyk ★★★★★
()
Ответ на: комментарий от ero-sennin

>1. S-выражения труднее читать и понимать, чем код на том же Питоне. >Во всяком случае, подавляющему большинству людей. :)

Как же народ пишет на Лиспе, если его так трудно понимать ? Может быть Вы не те S-выражения читали ? ;-) IMHO важна не "интуитивно понятная" читабельность, а предельная производительность. Вон Перл вообще не читается "человеком с улицы", но на нем почему-то пишет не малое множество людей.

>2. До сих пор нет нормальных свободных реализаций Лиспа, пригодных >для моих задач.

Так судя по Вашим словам, вообще нет ни одного языка, который был бы полностью пригоден для Ваших задач: для числодробления используете привязки Питона к C/C++/Fortran, для GUI также привязки к Qt (С++) и т.д. Lush по крайней мере позволяет все иметь в одном флаконе, писать высокопроизводительный код прямо на Лиспе, а не цеплять его со стороны.

>Сейчас я занимаюсь гуями на (Py)Qt, и здесь Лисп отпадает хотя бы >по той причине, что нет лисповских привязок для Qt. :)

А я занимаюсь гуями на LispWorks и Qt мне не особо нужен и что ? Кто-то успешно использует CELLS-GTK (пример свободной реализации GUI для CL) и скорей всего по продуктивности обставляет всех остальных (за счет CELLS). Кто-то вообще морды пишет на Java и пристыковывает к Лиспу. А ведь нет никаких противопоказаний сделать Лисповые привязки к Qt, нешто это доказательство, что Лисп такой плохой язык.

>Довольно естественным казалось писать всё это на Лиспе, потом с >Лиспа я плавно перешёл на OCaml, потому что его статическая >типизация в таких задачах рулит.

С чего это она там рулит ?

>Хотя, если вы приведёте мне пример реального проекта, где Лисп >объективно заруливает всех остальных, буду благодарен. :)

Ну например почти все системы символьной алгебры так или иначе являются лиспообразными. IMHO символьное программирование на других языках явно проигрывает Лиспу, т.к. он по сути является DSL для этой области. Учитывая, что эта область не маленькая, то Лисп сразу зарулил в Human Genom Project, насколько я знаю для представления цепочек ДНК и правил оперирования ими ничего лучше Лиспа не нашли. И вообще в биоинформатике он похоже рулит. Вот ссылка посвященная одному из таких проектов: http://nostoc.stanford.edu/Docs/whylisp.html объясняют почему используют Лисп.

В общем Лисп явно рулит там, где сложность проекта зашкаливает, а изменчивость спецификации предательски высокая. Сюда подпадают и большинство AI проектов, все таки это один из самых упоминаемых и уважаемых в этой области языков.

Потом, если почитать comp.lang.lisp там железячники частно хвалят Лисп, утверждая, что он позволяет верифицировать спецификации и вообще лего вытворять всякие штуки, которые на других языках было бы сделать проблематично.

anonymous
()
Ответ на: комментарий от anonymous

> С чего это она там рулит ?

Вообще-то рулит не именно статическая типизация, а наличие в OCaml
алгебраических типов данных. Кстати, на сколько я знаю, для Lisp'а
тоже есть что-то, позволяющее поиметь алгебраические типы.

> В общем Лисп явно рулит там, где сложность проекта зашкаливает, а
> изменчивость спецификации предательски высокая.

Мне кажется, что здесь подойдет любой высокоуровневый (желательно
функциональный) язык с динамической типизацией.

satanic-mechanic
()
Ответ на: комментарий от yyk

> Слил psyco :)

Кажется ты спрашивал про сравнение скорости работы _и_ требующуюся память.

Однако про потребление памяти (по которому SBCL слил), ты как-то забыл...

И разница по скорости работы в среднем три-пять или около того раз не существенна.

redvasily
()
Ответ на: комментарий от anonymous

> А я занимаюсь гуями на LispWorks

И на что похожи гуи на LispWorks? У них свой тулкит, или это обёртка вокруг какой-то другой либы?

> Потом, если почитать comp.lang.lisp там железячники частно хвалят Лисп, утверждая, что он позволяет верифицировать спецификации и вообще лего вытворять всякие штуки, которые на других языках было бы сделать проблематично.

Ну и что, я и сам железячник (наверное, бывший :-). И я думаю что если ты слаще C/VHDL ничего в жизни не ел, а это типично для железячника, то и Лисп мёдом покажется.

redvasily
()
Ответ на: комментарий от redvasily

>И на что похожи гуи на LispWorks? У них свой тулкит, или это >обёртка вокруг какой-то другой либы?

Под разными платформами могут быть разные обертки, но Look and feel совпадает с платформой. Под винду вообще никаких оберток нет, выглядит как обычное виндовое приложение. Под Linux вроде Motif был, под Mac OS может быть тоже над чем-то обертнуто. Главное что написал один раз, работает везде одинаково и выглядит привычно для той платформы, под которую пишется.

>Ну и что, я и сам железячник (наверное, бывший :-). И я думаю что >если ты слаще C/VHDL ничего в жизни не ел, а это типично для >железячника, то и Лисп мёдом покажется.

Там человек ясно пишет, что все он ел и сыт по горло. Ну может Haskell не пробовал, но его трудно позиционировать как средство для создания tool configuring tool. Он однозначно утверждает, что именно макры ему очень помогают и остальные фичи Лиспа.

anonymous
()
Ответ на: комментарий от satanic-mechanic

>Вообще-то рулит не именно статическая типизация, а наличие в OCaml >алгебраических типов данных. Кстати, на сколько я знаю, для Lisp'а >тоже есть что-то, позволяющее поиметь алгебраические типы.

Интересовался не так давно темой обработки текстов на ЕЯ. Да, алгебраические типы могли бы очень полезны, но не необходимы, достаточно средств для символьного программирования. Да и нечто вроде Пролога встроенного также было бы полезным, что в коммерческих Лиспах является нормой.

>Мне кажется, что здесь подойдет любой высокоуровневый (желательно >функциональный) язык с динамической типизацией.

В Лиспе есть динамическая типизация, но посредством макр можно генерить и код со статической типизацией, поэтому: 1) По быстродействию он будет всяко рулить перед просто ФЯ с динамической типизацией 2) Макры позволяют формировать DSL, опираясь на который обеспечить эволюцию программы гораздо легче, чем на базовом языке.

anonymous
()
Ответ на: комментарий от redvasily

> Кажется ты спрашивал про сравнение скорости работы _и_ требующуюся память.

> Однако про потребление памяти (по которому SBCL слил), ты как-то забыл...

> И разница по скорости работы в среднем три-пять или около того раз не существенна.

Там же смайлик стоял.

А преимущество в скорости имеет просто знаковый характер: sbcl при определённом преимуществе в _самом языке_ ещё и по скорости уделывает _компилируемую_ версию питона. Ничего личного. :)

yyk ★★★★★
()
Ответ на: комментарий от anonymous

> Интересовался не так давно темой обработки текстов на ЕЯ. Да,
> алгебраические типы могли бы очень полезны, но не необходимы,
> достаточно средств для символьного программирования. Да и нечто вроде 
> Пролога встроенного также было бы полезным, что в коммерческих Лиспах 
> является нормой.

Но полезны! А средства для символьного программирования есть и в OCaml.
А производительность? Практически используемые средства обработки
текстов на ЕЯ написаны на C++, так как на практике скорость важна. И
здесь OCaml может составить реальную конкуренцию!

P. S. Я не против лиспа, как я уже говорил. Я только за! Это
действительно хороший язык, совокупности возможностей которого нет ни в
одном языке. И для большого количества приложений - это отличный выбор.
Но главный инструмент программиста - его мозг!!! Поэтому хороший
специалист сделает эксклюзивную вещь на асме (просто потратит на это
неоправданно много времени), а идиоту и лисп не поможет.

satanic-mechanic
()
Ответ на: комментарий от satanic-mechanic

>Но полезны! А средства для символьного программирования есть и в >OCaml. >А производительность? Практически используемые средства обработки >текстов на ЕЯ написаны на C++, так как на практике скорость важна. И >здесь OCaml может составить реальную конкуренцию!

Ну SBCL вполне может потягаться с С++ как по скорости исполнения, так и тем более по скорости разработки. И OCaml по сумме этих параметров выглядит намного лучше С++. Только почему-то считается, что С++ настолько быстр, что этим даже оправдывается тормознутость разработки на нем. По моим наблюдениям как раз скорость разработки всегда намного важнее скорости выполнения кода, пока чешешься на С++ клиент уже уходит. Т.е. прототипирование очень важно в современном мире, где объективные качества товара менее важны, чем возможность своевременной раскрутки и привлечения клиента.

>Но главный инструмент программиста - его мозг!!! Поэтому хороший >специалист сделает эксклюзивную вещь на асме (просто потратит на это >неоправданно много времени), а идиоту и лисп не поможет.

Согласен. И на С++ есть немало очень хороших вещей, но какой ценой они были созданы, сколько времени хороших специалистов было угроблено этим низкоуровневым языком. А еще некоторые плюсисты говорят, что наличие GC является признаком плохого дизайна языка и приложения, на нем написанного. А отсутствие в своем Blabе нормальных замыканий они просто не видят и городят для компенсации этого весьма жуткие конструкции.

anonymous
()
Ответ на: комментарий от eugine_kosenko

Гы :-)

Таки пробили меня на "слабо", засел оптимизировать. Оказалось, что при
работе с потоками нужно вначале форматировать структуру в строку, тогда
не возникает неожиданных возвратов каретки и концов файла, и сама
программа становится короче. В результате получил общую длину около
1500. Потом оптимизнул еще в паре месть, получил примерно следующее:

Total length                                         1301
Meaning length                                        387
Total thesaurus                                       191
Meaning thesaurus                                     113
Total saturation (%)                                   30
Thesaurus saturation (%)                               59
Total expressiveness (%)                               15
Meaning expressiveness (%)                             29

Думаю, если оптимизировать волновой алгоритм, то Лисп таки обгонит Питон
;-). Попробую щас это сделать.

eugine_kosenko ★★★
()
Ответ на: комментарий от anonymous

> Ну например почти все системы символьной алгебры так или иначе являются лиспообразными.

Млин, ну почему в таком случае HOL написана на MoscowML? Если б оно было на Лиспе, так я бы еще лет пять назад к нему пришел.

Сейчас вот подумываю переписать HOL на Лиспе, но уж дюже много работы там, явно задача неподъемная... По крайней мере, страшная. ;-(

eugine_kosenko ★★★
()
Ответ на: комментарий от redvasily

> Ну лично я вообще в синтаксическом анализе/разборе вообще ни в зуб копытом. Это узкоспецифическая задача.

А сетевое взаимодействие не? Бо лично для меня реализация "мультиплексирования" и "многопользовательских" приложений -- почти такие же специфические задачи.

eugine_kosenko ★★★
()
Ответ на: комментарий от redvasily

> Т.е. преимущества лиспа проявляются только на крупных проектах, которых не существует :-)

Опять за рыбу гроши ;-).

Я ж уже упоминал, что типичное преимущество лиспа проявилось на таком крупном проекте, как Autocad. После того, как мы поигрались с роботами, стало еще и понятно, почему там рулит именно Лисп. Попробуйте представить себе Питон в качестве языка управления САПР :-).

eugine_kosenko ★★★
()
Ответ на: комментарий от eugine_kosenko

> Попробуйте представить себе Питон в качестве языка управления САПР :-).

Превосходно себе представляю. В большинство САПР-ов в области FPGA/VHDL встроен интерпритатор TCL (тяжёлое наследие далёкого UNIX-ового прошлого). Это просто ужоснах. Бывают даже хреновины написаные на Tcl/Tk (Modelsim)

Так что питон там бы пахал превосходно это сто пудов. Однажды даже пришлось писать на питоне скрипт, который генерировал скрипты на TCL чтобы сделать одну штуку :-)

redvasily
()
Ответ на: комментарий от anonymous

>> Млин, ну почему в таком случае HOL написана на MoscowML

> А почему Linux написан на Си?

Потому что это подходящий язык для соответствующей архитектуры. Для Лисп-машин он был бы написан на Лиспе.

HOL -- система символических вычислений (точнее, доказательства теорем). По идее, довольно удачная область приложения для Лиспа. Почему нет?

eugine_kosenko ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.