LINUX.ORG.RU

Компиляторы LISP


0

0

Здравствуйте,

я новичек в этом деле, но знаю, что существуют clisp, CMUCL, SBCL, GNU common lisp.

какой из них самый лучший и самый свободный?

anonymous

clisp - интерпретатор
gnu common lisp - AFAIK не полностью стандарт ANSI поддерживает
cmucl - не знаю развивается ли он
sbcl - развивается, есть под разные ОС (даже альфа порт под венды) и аритектуры, вроде бы все нормально с поддержкой стандарта

это вкратце

ЗЫ: они все свободные

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

спрашивающего интересовали "самые свободные". т.к. существует по меньшей мере одно мнение (RMS) о том, что BSD-like менее свободны, чем GNUтые, считал полезным проинформировать спрашивающего :)

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

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

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

>clisp - интерпретатор

Хоть он и интерпретатор, но компилировать может (иначе как на нём работала бы например maxima). Кстати, многие проекты по умолчанию используют именно clisp...

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

> но компилировать может (иначе как на нём работала бы например maxima)

а по-подробнее можно? Если имеется ввиду компиляция в байткод - так это стандартная методика реализации интерпретаторов (ВМ+компилятор в байткод). clisp машинный код не генерирует и за счет этого он очень переносим.

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

>clisp - интерпретатор gnu common lisp - AFAIK не полностью стандарт ANSI поддерживает

а это разве не одно и тоже?

clisp - вроде как самый ANSI поддерживающий, вот еще бы по скорости сравнить с sbcl например

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

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

> а это разве не одно и тоже?

gcl и clisp? нет :-)

http://clisp.cons.org/ http://www.gnu.org/software/gcl/

> clisp - вроде как самый ANSI поддерживающий

а вот у gcl:

> While GCL was originally designed to meet the CLtL1 standard, recent development has brought GCL much of the way toward its current goal -- full ANSI compliance.

Begemoth ★★★★★
()

Есть ещё ECL. Компиляция как в байткод, так и в натив (через си). С поддержкой стандартов пока напряжёнка. Помимо standalone приложений может делать обычные динамические библиотеки. Несколько операционок. GPL

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

о как, и правда ступил, упустил я как-то gcl из виду:(

одно смущает последний релиз gcl был аж в 2005 году

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

хоть и в байткод, но всё же компилятор :)

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

ну так для общего развития, этож гнутый софт, а так конечно sbcl почти всем рулит

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

>clisp - вроде как самый ANSI поддерживающий, вот еще бы по скорости сравнить с sbcl например

CLISP под лицензией GNU идет, а SBCL -- BSD. Но CLISP -- компилятор в байткод, а SBCL/CMU -- в машинный код. В целом и общем CLISP весьма шустрый. AFAIR, CLISP использовался в Yahoo Store тов. Полем Грэмом. На нем в приемлемое время запускается и работает McCLIM/CLX (графика вся на CL без Си), шустро работает lambda-gtk (компилируется без сучка и задоринки). А SBCL для машины, скажем, P1-200/64 Мб (я на такой запускать пробовал) памяти ну слишком тяжел. CLISP же очень даже жив на такой машине, и все вышеуказанное работает. Так что если ваши клиенты сидят на старом железе, то лучше на CLISP ориентироваться. Или на какие-нибудь коммерческие реализации.

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

> В целом и общем CLISP весьма шустрый.

У меня совсем другая имха - "в общем и целом" clisp таки порядочный тормоз (нет, ну конечно далеко не самый тормозной из байт-комплилируемых динамических языков :)), за исключением арифметики больших чисел и ввода/вывода (это довольно быстро).

Но если скорость не на первом месте - да, очень и очень "приятная" реализация с хорошими возможностями :)

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