LINUX.ORG.RU

Racket VS Common Lisp

 , , , ,


8

10

Добрый день дорогие аналитики L0R'a. Ковыряю ракет, пишу на нем клиентскую программу - а пока хочется вот что спросить. Все же что лучше - Racket или Common Lisp? Что более перспективно? Ну и естественно, какие у одного недостатки/преимущества по сравнению с другим?

Ну и до кучи - к чему больше графических тулкитов, библиотек, батареек (живых), что более полноценно и «Ъ»

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

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

ymn ★★★★★
()

А ты потом случайно не переименуешься в CommonLispEvangelist? :)

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

Что касается Common Lisp, то тут нужно выделить такое разбиение: коммерческий софт и опенсорс. Коммерческий софт - это прежде всего коммерческие лиспы (lispworks, allegro cl), а они выглядят очень достойно, хотя в коммерческих целях свободные реализации лиспа используются также. Опенсорс тоже неплох, особенно в серверной части, но дектопное клиентское приложение лучше будет разработать с помощью коммерческого лиспа - те предлагают добротные библиотеки для гуи и умеют создавать небольшие по нынешним временам бинарники (по сравнению с явой, где надо включать jre).

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

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

ссылка

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

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

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

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

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

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

знаю что в racket при создании dsl отладчик его подхватывает как родной язык «искаропки», а так ниша cl явно шире

proofit404
()

Раз уж пошла такая пьянка, задам пару вопросов:
1. Что можно такого написать на лиспе в учебных целях, чтобы и не hello world был, и чтобы наконец-таки хоть как-то изучить лисп?
2. Есть ли жизнь в связке vim + lisp? Или под лисп только емакс?

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

1. спасибо
2. это я не для начала холивара спросил :)

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

Ну я вот начал писать приложение-клиент как раз для обучения. Если бы не было данной «необходимости» - я бы написал «рогалик». Как вариант - напиши вменяемый торрент-клиент. Там будет работа с файловой системой, сетью, гуем, и прочим. Ну и допили туда «фишек», как - возможность подключиться к клиенту удаленно через браузер, написание скриптов для него, собственная нереляционная база данных для каталогизации всего используемого и т.п.

Есть, но зачем? Давайте так - какой из lisp'ов вы имеете ввиду? Есть Racket, есть Scheme, есть Clojure, есть Common Lisp...Я вот пользуюсь DrRacket/Racket. Мне он ближе показался.

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

не придется ли потом после него еще и CommonLisp изучать.

что значит придётся? Будто что-то плохое

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

Есть ли жизнь в связке vim + lisp

не очень, это, кстати, была решающая причина, по которой я перелез на емакс, ни разу не пожалел с тех пор

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

По идее, Racket больше батареек имеет, нежели тот же SBCL (поправьте, если я не прав) и является как бы неакадемической реализацией Scheme (мог соврать, опять же поправьте). И у него есть такие плюсы как лучшая по сравнению с CL система объектов, больший уклон в сторону ФП...

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

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

CL - нагромождение фич и и полурабочих либ, не успевшая попасть в стандарт 94 года.

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

напиши вменяемый торрент-клиент

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

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

Жаль. Это как раз и смущает. Я сам вимер, а из-за ЯП перелезать на емакс - не очень хочется. Есть же всякие Limp'ы и Slimv'ы - как они?

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

не придется.

CL не является уникальным и незаменимым.

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

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

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

Я сам вимер

я тоже, три года сидел

а из-за ЯП перелезать на емакс - не очень хочется

помимо лиспов в емаксе есть очень много других плюшек

Есть же всякие Limp'ы и Slimv'ы - как они?

топором бриться пробовал?

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

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

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

конкретные претензии будут?

известнае проблемы - недостаточная производительность (этим просто никто не занимается).

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

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

Как уже было сказано выше - в рэкете смущает академичность.

Неоднократно слышал подобное утверждение относительно разных языков, в чем это выражается?

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

Ну по идее, если правильно приготовить - вполне можно и Vim использовать. Где-то даже видел маны по настройке. Просто есть ряд специфичных инструментов, как понимаю. Но для изучания - vim'a должно хватить поность, я так думаю.

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

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

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

Жизнь есть. Limp слабоват и кривоват, а вот slimv - хорош. Я пытался освоить emacs из-за SLIME, но педалей очень не хватает - пальцы болят.

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

В Racket тоже это все есть, только лучше.

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

(читай - чистота концепции языка, а не языковая проституция как python).

(читай - чистота концепции языка, а не языковая/парадигменная проституция как python).

*fixed

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

Так как мне лично лиспы нафиг не сдались, то just for lulz проще и интереснее писать на Racket. Но если ты пишешь что-то кому-то, да и еще в production, то ты сильно промахнулся. Хотя бы Clojure, _ты_даже_не_представляешь_ сколько там батареек

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

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

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

При такой формулировке всё, кроме жабы, шарпа и пыха, - академические языки.

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

Ни одного job offer'а по рекету не нашел. По CL они хотя бы есть.
ИМХО, лучше бы Dr.Racket был бы просто хорошей CL IDE, нежели велосипедом.

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

ИМХО, лучше бы Dr.Racket был бы просто хорошей CL IDE

Dr.Racket нельзя написать под CL. Рантайм у общелиспа слабоват.

Ни одного job offer'а по рекету не нашел.

Три вакансии больше, три меньше - разве разница существенно? Специалистов для предметной области обычно ищут, а не для языка, тем более если речь о языках редких, проще взять готового спеца и обучить языку. По-этому они и встречюатся такие вакансии так редко. Надо просто смотреть компанию, которая пишет на соответствующем языке. Вот, например, тут пишут на racket и скале: http://www.untyped.com/

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

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

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

Ни одного job offer'а по рекету не нашел.

плохо искал

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