Какова лучшая схема или реализация LISP для OS X?
Я ищу версию схемы или даже LISP, которую я могу использовать для восстановления некоторых потерянных навыков разработки Lisp. Некоторые веб-возможности были бы хорошими, но не существенными.
Я посмотрел на схему Plt и MIT, и, хотя оба выглядят довольно хорошо, Plt кажется более многофункциональным. Я также посмотрел на реализации Lisp, но все они кажутся довольно дорогими.
Я предпочитаю бесплатные / недорогие реализации, так как это действительно может быть просто случайным хобби программирование. Какие у вас есть рекомендации?
15 ответов:
Я бы пошел с ракеткой. Это может быть не так быстро, как SBCL, но у него есть отличные библиотеки и документация, а также интегрированная среда, которая предназначена для разработки и запуска схемных программ прямо из ворот. Что мне действительно нравится в IDE Racket, DrRacket, это то, что вам не нужно делать-вам не нужно изучать Emacs, вам не нужно изучать слизь, вам не нужно беспокоиться о поиске сторонних библиотек, поскольку практически все библиотеки, предназначенные для Racket, могут можно найти в пакетов. В целом, это действительно сокращает время обучения и позволяет сосредоточиться на реальной задаче: создавать программный код.
кроме того, он поставляется с веб-сервер Если вы хотите сделать веб-сайты с ракеткой (которые я сейчас изучаю).
Я довольно много экспериментировал с этим.
Clozure Common Lisp (née Open MCL), безусловно, самый быстрый; 25-30 процентов быстрее, чем следующий конкурент на моем intel Mac Mini.
MIT Scheme работает довольно хорошо на Mac. Я думаю, что в конечном итоге я скомпилировал его сам, но на этом сайте есть двоичные файлы. Схема PLT также хороша и, возможно, немного лучше интегрирована в мир Mac. (Схема plt, который сейчас известен как ракетка, но я не экспериментировал с ним после смены.)
Для Схемы DrRacket - это круто (входит в ракетка).
Для Common Lisp,Готов Сюсюкать - это здорово. Один dmg с SBCL, Aquamacs и слизью, работающей из коробки.
веб-сайт:
Ready Lisp-это связывание вместе нескольких популярных пакетов Common Lisp, особенно для Mac OS X, в том числе: Aquamacs, SBCL и SLIME. После загрузки у вас будет один пакет приложений, который вы можете дважды щелкнуть-и оказаться в полностью настроенном Common Lisp REPL.
это идеально подходит для пользователей OS X, которые хотят попробовать красоту Common Lisp с минимумом хлопот. Он также может быть использован учителями, чтобы дать своим студентам Mac бесплатную, полную среду Common Lisp, чтобы забрать их домой. Требования
текущая версия Ready Lisp-20090127 и требует Mac OS X 10.5 (Leopard).
Он включает в себя следующее версии компонентного программного обеспечения:
Aquamacs 1.6 SBCL 1.0.24 SLIME 2009-01-23 CL-FAD 0.6.2 CL-PPCRE 2.0.1 LOCAL-TIME 0.9.3 SERIES 2.2.10 CL HyperSpec 7.0 paredit.el 20 redshank.el 1 cldoc.el 1.16
Я большой поклонник Clojure, SBCL и Clozure CL. Они все фантастические, но они также излишни, если все, что вы хотите сделать, это обновить свои шепелявые отбивные. Все они требуют абсурдного количества поиска информации, поиска списка рассылки, установки пакета, скрытия irc и т. д.
Dr Scheme просто устанавливается и запускается. Я закончил первые 3 Главы SICP четыре с половиной года назад, используя доктором схеме. Ничто не было более глубоким, чем определение оценщика схемы в себе. Как только вы получите ваш подумайте о том, что у вас будет гораздо больше терпения для братьев по промышленной силе.
Я только начал играть с Clojure. Это, по-видимому, имеет хороший web framework, и компилируется в байт-код JVM.
Я также использую DrScheme довольно много. Это простой, но полезный IDE.
в зависимости от того, как вы определяете "Lisp", Clojure может подойти. Он работает на OS X fine (он работает везде, где работает JVM). Он имеет веб-возможности, и это бесплатно.
Он также имеет преимущество быть новым и свежим и весело использовать. Может быть идеально подходит для хобби программирования. Легко писать веб-приложения или приложения GUI (используя качели Java или даже Qt).
Я не использовал его сам, но Стальной Банк Common Lisp получил некоторое благоприятное гудение в reddit. Это с открытым исходным кодом и бесплатно, так что цена подходит для некоторых хобби программирования.
в прошлом, у меня было GNU Common Lisp работает на моем macbook pro.
Я рекомендую Racket новичкам, так как он обеспечивает одну из самых хороших IDE для начинающих схем (или, скорее, начинающих программистов, которые используют схему или, еще лучше, работают через HtDP).
другой вариант, для людей, которые больше заинтересованы в небольшой системе схемы для того, чтобы изменить его самостоятельно или прочитать его исходный код, является схема воровства, которая представляет интерес в основном потому, что ее JIT компилятор, Twobit, сам по себе реализован полностью в схеме.
обновление: кроме того, схема Chez недавно была открыта:
https://github.com/cisco/ChezScheme
(Это может быть не так "мало", как воровство, но у него очень агрессивный оптимизирующий компилятор.)
вы можете посмотреть на то, что в Ассоциация пользователей Lisp или The Common Lisp Wiki чтобы посмотреть, что там. Я установил себя со стальным банком Common Lisp и Emacs, но пока мало что сделал с ним.
Если вы просто хобби программирования, LispWorks имеет бесплатную, личную версию, которая является довольно мощным и сложным. Самая большая проблема-это ограничение времени выполнения в несколько часов. Таким образом, вы не будете писать в нем долго работающие серверы, но это не значит, что это не полезный инструмент.
CLISP работает на почти все, и это довольно приятно на самом деле, он просто не делает потоки. (Важно, если вы хотите написать фактический сервер, но, как показали PHP и Perl, Apache + [insert язык] является очень жизнеспособной платформой.)
Clozure CL доступно бесплатно в магазине mac!
Я задавал себе тот же вопрос в последнее время. Используя DrScheme на OS X, это был бы мой первый выбор схемы распределения для любой платформы. Очень хорошая IDE, функции отладки и хороший набор библиотек/фреймворков (включая очень хороший набор инструментов GUI, который " просто работает... даже на Mac' ;-) )
однако теперь я ищу аналогичную удобную среду для Common Lisp. Дело дошло до БКК (OpenMCL) по сравнению с SBCL. SBCL, кажется, популярный выбор, но я читал это на OS X не поддерживает потоковую обработку. (Это действительно проблема?). Clozure CL, с другой стороны, может похвастаться хорошей поддержкой собственных потоков, obcj-моста и т. д...
Я нахожу CCL немного странным, но я собираюсь придерживаться его некоторое время - это все еще выглядит как логический выбор для интеграции.
Я использую Emacs 23 (построенный из источника с использованием --with-ns) и слизь в качестве среды, и это хорошо работает для меня. : -)
Я нашел это курица работает хорошо для схемы и доступен через доморощенного.
brew install chicken
большая часть кода из SICP работает с незначительными изменениями.
идете с ракетка. Я очень доволен этим!