LINUX.ORG.RU

Прошу совет у бывалых лисперов

 , , , домашний проект,


7

8

Доброго времени суток! Недавний мой пост о smalltalk натолкнул меня на мысль, что надо заниматься тем, что больше нравится. В итоге я пришел к выводу, что лиспо-семество мне ближе. Поэтому прошу многоуважаемых спецов по лиспу посоветовать: 1. Какую реализацию Lisp выбрать? В чем ее преимущество перед другими? Есть ли возможность заводить под оффтопик? 2. Какой графический тулкит лучше всего вяжется с данной реализацией? 3. Какой быстрый туториал можно почитать по данной реализации лиспа? (классические труды в over9000 страниц не советовать, их я найду в LispFAQ и через поиск лора, интересуют именно туториалы после которых я могу начать писать код через пару вечеров неспешного чтения).

З.Ы.: Если найдутся противники лиспа и/или сторонники C# - отговорите меня реализовывать ERP на лиспе (работаю на C# сейчас, поэтому с ним будет легче). еще раз хочу заметить, что «ерпа» будет домашней поделкой, «для себя» и в целях саморазвития.

Ответ на: комментарий от shty

А можно по пунктам тех вопросов которые я написал? Заранее благодарю!

i_overdose
() автор топика

1. Зависит от того, где ты хочешь ее использовать: например SBCL весьма шустро работает на линуксах, а вот виндовый порт практически не развивается. Кроме того, есть и коммерческие реализации, которые работают везде, но стоят денег.

2. Зависит от выбранной реализации.

3. Читай Practical Common Lisp

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

З.Ы.: «Платные» реализации интересуют в случае наличия «комьюнити» или версии «для опен-сурс разработчиков». Все же среда будет для обучения в том числе. По пункту 3: его быстро не прочесть :( Писать смогу начать только через месяцок. А это на мой вгляд уже «минус» для обучения.

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

его быстро не прочесть

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

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

в таком случае бери кложу - все-таки адовые тонны джавовских библиотек будут хорошим подспорьем.

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

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

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

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

+9000. Но на счет исходников не соглашусь. Если вчитываться, то все понятно и просто. НО! Это опять же потеря времени, которое можно потратить на обучение (написание своего, пусть пока и быдло, но своего кода). Примеры можно давать и примитивные (как и делают в большинстве туториалов).

i_overdose
() автор топика

Common Lisp:

1) SBCL или Clozure CL. Быстрые, полные, (относительно) безбажные реализации; хорошо поддерживаются библиотеками. Под оффтопиком работают, но у SBCL эта поддержка полуофициальная и не мейнтейнится.

2) don't know

3) Practical Common Lisp

dmitry_vk ★★★
()

учить совершенно незнакомую тебе систему и решать подобные (erp) задачи - бесполезно. Спустя некоторое время, когда вы более менее достигнете понимания, как надо писать на лиспе, код станет крайне дурно пахнуть. Так что его придется выбрасывать.
Начинайте с какого-нибудь sicp (первые 2-3 главы), потом попробуйте On Lisp, решайте примеры.

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

если интересно, то вот тут https://github.com/filonenko-mikhail/cltl2-doc переводят «Common Lisp The Language Second Edition» на язык осин и берез.

На всякий случай уточню: «Common Lisp The Language Second Edition» - это не спецификация языка, а древний-древний черновик спецификации, который расходится с лиспом в некоторых существенных моментах.

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

2. Какой графический тулкит лучше всего вяжется с данной реализацией?

2) don't know

это был сарказм? :) Если я не ошибаюсь, то вы были разработчиком cl-gtk2?

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

Если я не ошибаюсь, то вы были разработчиком cl-gtk2?

В этом нет ошибки. Я его не мейнтейню, поэтому рекомендовать не могу. Есть несколько биндингов к Gtk+ (и среди них cl-gtk2), с их помощью вполне можно делать GUI.

dmitry_vk ★★★
()

1. Какую реализацию Lisp выбрать? В чем ее преимущество перед другими? Есть ли возможность заводить под оффтопик?

Наиболее стабильная из всех бесплатных, ИМХО, ClozureCl. Производительность ниже чем у SBCL, но и проблем тоже, особенно с платформами.

2. Какой графический тулкит лучше всего вяжется с данной реализацией?

Я графику на лиспе почти не делал, то есть делал немного своим велосипедом. Для ccl первым же нагуглилось http://trac.clozure.com/ccl/wiki/EasyGui. Я слышал хорошие отзывы об EQL - Qt-шного биндинга к ECL, который, к слову, в последнее время стал хорошо развиваться и начал вести себя дотаточно стабильно. http://ecls.sourceforge.net/ http://password-taxi.at/EQL

3. Какой быстрый туториал можно почитать по данной реализации лиспа?

Если тебе действительно нужна документация по реализации, то смотри на сайте http://ccl.clozure.com, там есть. Я учил лисп с почти синхронного чтения PCL и SICP. первая - воодная в CL, вторая разворачивает мышление в более лисповую манеру, говорят, по ней студентов учат. И следующей книгой была Let Over Lambda.

Полезные ссылки: http://cl-cookbook.sourceforge.net/ http://www.cs.cmu.edu/Groups/AI/html/cltl/clm/index.html

staseg ★★★★★
()
Последнее исправление: staseg (всего исправлений: 1)
Ответ на: комментарий от vurdalak

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

Просто PCL так пиарят, что я ни на что кроме нее не наткнулся.

Если ты не можешь сделать себе подборку литературы по интересующей теме, то тебе рано Лисп учить. Тебе рано вообще что либо учить.

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

3: его быстро не прочесть

Я его до степени «пошел писать код» читал (не весь) 3 дня.

antares0 ★★★★
()

их я найду в LispFAQ и через поиск лора

ССЗБ.

anonymous
()

Лиспом занимался мало, но вот посоветовать прочитать «Loving Lisp, or the Savvy Programmer's Secret Weapon» могу. Это краткий обзор общелисповых фич. Английский там очень простой, прочитать можно за пару вечеров (82 стр. крупным шриытом).

Norgat ★★★★★
()
Последнее исправление: Norgat (всего исправлений: 1)
Ответ на: комментарий от vurdalak

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

Плохо быть тупеньким.

anonymous
()

3. Какой быстрый туториал можно почитать по данной реализации лиспа?

Если ты раньше с лиспами дела не имел, то _быстрее_ всего будет сначала пройти SICP (используй любую реализацию от SBCL до guile), а затем PCL на той реализации, которую ты выберешь для своего проекта.

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

ИМХО, ClozureCl. Производительность ниже чем у SBCL, но и проблем тоже, особенно с платформами.

И жрёт она вроде меньше.

ados ★★★★★
()

Racket очень даже приятен, чтобы потыкать LISP и DrRacket рулит, если не фанат emacs'а. http://racket-lang.org/

anonymous
()

Оставайся на шарпе. Все, что в лишпике было хоть немного полезного он в себя давно вобрал (GC, лямбды в малых дозах и только для fluent LINQ). При этом шарп - статически типизированный язык. Он по всем параметрам превосходит лишпики.

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

Он по всем параметрам превосходит лишпики.

Особенно по количеству пушечного индусского мяса.

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

«Модные»? Модными эти фишечки были в 70х. А сейчас они уже проверенные временем, и могут постепенно вводиться в промышленное программирование.

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

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

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

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

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

TC:
еще раз хочу заметить, что «ерпа» будет домашней поделкой, «для себя» и в целях саморазвития.

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

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

Ты бы свой куций можзечишко сам напряг бы, лярва. Шарп как язык намного мощнее и гибче древнего убогого лишпика, и, соответственно, требует напряжения мозгов ничуть не меньшего в работе. Не напрягая мозг вообще ничего хорошего ни на одном языке не сделаешь.

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

И на этой ласковой ноте мы заканчиваем общение!

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

лучше мозг немного напрячь.

Мозг надо предметной областью напрягать, а язык по задаче выбирать.

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

язык по задаче выбирать.

А не по большой компании индусов и пиар-акции.

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

Если не разу не пользовался молотком, можно ударить себе по пальцу.

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

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

Чем быстрее он конфеткой станет, тем быстрее в сраное говно скатится.

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