какова лучшая реализация scheme или lisp для os x?

<p>я ищу версию scheme или даже lisp, которую я могу использовать, чтобы восстановить некоторые утраченные навыки разработки lisp. некоторые веб-возможности были бы хорошими, но не обязательными.</p><p>я посмотрел на схему plt и mit, и, хотя оба выглядят довольно хорошо, plt кажется более функциональным. я также посмотрел на реализации lisp, но все они кажутся довольно дорогими.</p><p>я предпочитаю бесплатные/недорогие реализации, поскольку это действительно может быть случайным хобби программирования. какие рекомендации вы бы дали?</p>

<p>я бы пошел с ракеткой. он может быть не таким быстрым, как sbcl, но у него есть отличные библиотеки и документация, а также интегрированная среда, предназначенная для того, чтобы вы могли разрабатывать и запускать программы scheme прямо из ворот. что мне действительно нравится в ide racket, drracket, это то, что вам не нужно делать - вам не нужно изучать emacs, вам не нужно изучать slime, вам не нужно беспокоиться о поиске третьей стороны. партийные библиотеки, так как практически все библиотеки, предназначенные для racket, можно найти в <a href="http://pkgs.racket-lang.org/">packages</a> . в целом, это действительно сокращает кривую обучения и позволяет сосредоточиться на конкретной задаче: написание отличного кода.</p><p>кроме того, он поставляется с <a href="http://docs.racket-lang.org/web-server/">веб-сервер</a> , если вы хотите создавать веб-сайты на racket (которые я сейчас изучаю).</p>

<p>я довольно много экспериментировал с этим.</p><p> <a href="http://www.clozure.com/clozurecl.html">clozure common lisp</a> (нет open mcl), безусловно, самый быстрый; на 25-30 процентов быстрее, чем у следующего конкурента на моем intel mac mini.</p><p> <a href="http://www.gnu.org/software/mit-scheme/">схема mit</a> прекрасно работает на mac. я думаю, что в конце концов скомпилировал его сам, но на этом сайте есть двоичные файлы. схема plt также хороша и, возможно, немного лучше интегрирована в мир mac. (схема plt теперь известна как <a href="http://www.racket-lang.org/">racket</a> , но я не экспериментировал с ней после изменения.)</p>

<p>для схемы <a href="http://docs.racket-lang.org/drracket/">drracket</a> - это круто (включено в <a href="http://racket-lang.org/">racket</a> ).</p><p>для common lisp <a href="https://github.com/jwiegley/ready-lisp">ready lisp</a> отлично. один dmg с sbcl, aquamacs и slime работает из коробки.</p><p>с веб-сайта:</p><blockquote> <p>ready lisp - это связка нескольких популярных пакетов common lisp, специально предназначенных для mac os x, в том числе: aquamacs, sbcl и slime. после загрузки у вас будет один пакет приложений, который вы можете дважды щелкнуть - и вы окажетесь в полностью настроенном common lisp repl.</p> <p>он идеально подходит для пользователей os x, которые хотят испытать красоту common lisp с минимальными трудностями. преподаватели также могут использовать его для предоставления своим студентам mac бесплатной, полной среды common lisp, чтобы они могли брать их с собой домой. требования</p> <p>текущая версия ready lisp - 20090127 и требует mac os x 10.5 (leopard).</p> <p>включает следующие версии программного обеспечения компонента:</p> <pre><code>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 </code></pre></blockquote>

<p>я большой поклонник clojure, sbcl и clozure cl. все они фантастические, но они также излишни, если все, что вы хотите сделать, это обновить свои отбивные лиспинга. все они требуют абсурдного поиска информации, поиска в списках рассылки, установки пакетов, скрытых сообщений и т.д.</p><p>dr scheme просто устанавливает и запускает. я закончил первые 3 главы sicp четыре с половиной года назад, используя dr scheme. нет ничего более глубокого, чем само по себе определение оценщика схемы. как только вы обдумаете это, у вас будет гораздо больше терпения для братьев по промышленной силе.</p>

<p>я только начал играть с <a href="http://clojure.org/">clojure</a> . он, очевидно, имеет nice <a href="http://groups.google.com/group/clojure/browse\_frm/thread/448865254f9bd293">веб-фреймворк</a> и компилируется в байт-код jvm.</p><p>я также использую <a href="http://www.drscheme.org/">drscheme</a> довольно много. это простая, но полезная среда.</p>

<p>в зависимости от того, как вы определяете "lisp", <a href="http://clojure.org/">clojure</a> может соответствовать требованиям. он работает на os x нормально (он работает везде, где работает jvm). он имеет веб-возможности, и это бесплатно.</p><p>это также имеет преимущество быть новым и новым и забавным в использовании. может быть идеально подходит для хобби программирования. легко писать веб-приложения или приложения с графическим интерфейсом (используя java swing или даже qt).</p>

<p>если вы ищете scheme, вы можете взглянуть на только что выпущенный <strong>jazzscheme</strong>.</p>

<p>я сам этим не пользовался, но <a href="http://www.sbcl.org/">steel bank common lisp</a> получил положительный отзыв на reddit. это с открытым исходным кодом и бесплатно, поэтому цена подходит для некоторых хобби программирования.</p><p>в прошлом у меня работало <a href="http://www.gnu.org/software/gcl/">gnu common lisp</a> на моем macbook pro.</p>

<p>я рекомендую racket новичкам, так как он предоставляет одну из лучших ide для начинающих scheme (или, скорее, для начинающих программистов, которые используют scheme или, что еще лучше, пробираются через htdp).</p><p> <a href="http://racket-lang.org/">http://racket-lang.org/</a> </p><p>другой вариант, для людей, которые больше интересуются небольшой системой scheme для того, чтобы самостоятельно изменить ее или прочитать ее исходный код, - это larceny scheme, которая представляет большой интерес, поскольку ее jit-компилятор twobit полностью реализован на scheme.</p><p> <a href="http://www.larcenists.org/">http://www.larcenists.org/</a> </p><hr><p>обновление: кроме того, chez scheme недавно был открыт с открытым исходным кодом:</p><p> <a href="https://github.com/cisco/chezscheme">https://github.com/cisco/chezscheme</a> </p><p>(возможно, он не такой "маленький", как larceny, но у него очень агрессивный оптимизирующий компилятор.)</p>

<p>возможно, вы захотите посмотреть, что там <a href="http://alu.org">ассоциация пользователей lisp</a> или <a href="http://www.cliki.net/index">общая вики lisp</a> , чтобы увидеть, что там. я настроился на steel bank common lisp и emacs, но пока мало что сделал с этим.</p>

<p> <a href="http://ccl.clozure.com/">clozure cl</a> доступен бесплатно в магазине mac!</p><p> <a href="http://itunes.apple.com/us/app/clozure-cl/id489900618">http://itunes.apple.com/us/app/clozure-cl/id489900618</a> </p>

<p>если вы просто любите программировать, у lispworks есть бесплатная личная версия, которая достаточно мощная и сложная. самая большая проблема - ограничение времени работы в несколько часов. итак, вы не будете писать на нем какие-либо долго работающие серверы, но это не значит, что это не полезный инструмент.</p><p>clisp работает практически во всем, и на самом деле он довольно хорош, он просто не работает. (важно, если вы хотите написать реальный сервер, но, как показали нам php и perl, apache + [insert language] - очень жизнеспособная платформа.)</p>

<p>я задавал себе тот же вопрос в последнее время. используя drscheme на os x, я бы выбрал дистрибутив scheme для любой платформы. очень хорошая ide, функции отладки и хороший набор библиотек/фреймворков (включая очень хороший инструментарий gui, который "просто работает ... даже на mac" ;-))</p><p>однако сейчас я ищу такую же комфортную среду для common lisp. дело дошло до ccl (openmcl) против sbcl. sbcl, кажется, популярный выбор, но я читал, что в os x не поддерживает многопоточность. (это действительно проблема?). clozure cl, с другой стороны, может похвастаться хорошей поддержкой нативных потоков, моста obcj и т.д.</p><p>я нахожу ccl немного странным, но я собираюсь придерживаться его некоторое время - он по-прежнему выглядит логичным выбором для интеграции.</p><p>я использую emacs 23 (созданный из исходного кода с использованием --with-ns) и slime в качестве среды, и это хорошо работает для меня. :-)</p>

<p>перейти с <a href="https://racket-lang.org/">ракетка</a> . я очень счастлив с этим!</p>

<p>я обнаружил, что <a href="http://www.call-cc.org/">chicken</a> хорошо работает для scheme и доступен через homebrew.</p><pre><code>brew install chicken </code></pre><p>большая часть кода из sicp работает с небольшими изменениями.</p>