Estou procurando uma versão do Scheme ou mesmo LISP que eu possa usar para recuperar algumas habilidades de desenvolvimento Lisp perdidas. Alguns recursos da web seriam bons, mas não essenciais.
Eu olhei para o esquema Plt e MIT e, embora ambos pareçam muito bons, o Plt parece ser mais rico em recursos. Também examinei as implementações Lisp, mas todas parecem muito caras.
Eu sou a favor de implementações gratuitas / baratas, pois é realmente provável que seja apenas uma programação de hobby ocasional. Que recomendações você teria?
Respostas:
Eu iria com o Racket. Pode não ser tão rápido quanto o SBCL, mas tem excelentes bibliotecas e documentação, bem como um ambiente integrado projetado para permitir que você desenvolva e execute programas Scheme desde o início. O que eu realmente gosto no IDE do Racket, DrRacket, é o que você não precisa fazer - você não precisa aprender Emacs, não precisa aprender SLIME, não precisa se preocupar em procurar terceiros- bibliotecas do partido, como virtualmente todas as bibliotecas destinadas ao Racket podem ser encontradas em pacotes . Resumindo, ele realmente reduz a curva de aprendizado e permite que você se concentre na tarefa real em mãos: escrever um ótimo código.
Além disso, ele vem com um servidor web se você quiser fazer sites com o Racket (que estou pesquisando atualmente).
fonte
Eu fiz algumas experiências com isso.
Clozure Common Lisp (née Open MCL) é de longe o mais rápido; 25-30 por cento mais rápido do que o próximo concorrente no meu Mac Mini Intel.
O Esquema do MIT funciona muito bem em um Mac. Acho que acabei compilando sozinho, mas há binários nesse site. O PLT Scheme também é bom e, possivelmente, um pouco melhor integrado ao mundo Mac. (O esquema PLT agora é conhecido como Racket , mas não o experimentei depois da mudança.)
fonte
loop
macro.Sou um grande fã de Clojure, SBCL e Clozure CL. Eles são todos fantásticos, mas também são exagerados se tudo o que você quer fazer é refrescar suas costeletas de Lisping. Todos eles requerem uma quantidade absurda de caça de informações, pesquisa de listas de discussão, instalação de pacotes, irc espreita, etc.
Dr Scheme apenas instala e executa. Terminei os três primeiros capítulos do SICP há quatro anos e meio, usando o Dr. Scheme. Nada foi mais profundo do que definir um avaliador Scheme em si. Depois de definir isso, você terá muito mais paciência para os irmãos da força industrial.
fonte
Para Scheme, DrRacket é incrível (incluído no Racket ).
Para Common Lisp, Ready Lisp é ótimo. Um único dmg com SBCL, Aquamacs e Slime funcionando fora da caixa.
A partir do site:
fonte
Acabei de começar a jogar com Clojure . Aparentemente, ele tem uma boa estrutura da web e compila para bytecode JVM.
Eu também uso muito o DrScheme . É um IDE simples, mas útil.
fonte
Dependendo de como você define "Lisp", Clojure pode ser adequado. Ele roda bem no OS X (roda em qualquer lugar em que o JVM seja executado). Ele tem recursos da web e é gratuito.
Ele também tem a vantagem de ser novo, moderno e divertido de usar. Pode ser ideal para programação de hobby. É fácil escrever aplicativos web ou aplicativos GUI (usando Swing do Java ou mesmo Qt).
fonte
Eu mesmo não usei, mas o Steel Bank Common Lisp recebeu comentários favoráveis no reddit. É open source e gratuito, então o preço é justo para alguma programação de hobby.
No passado, eu tinha o GNU Common Lisp em execução no meu macbook pro.
fonte
Se você está procurando pelo Scheme, pode dar uma olhada no JazzScheme recém-lançado .
fonte
Eu recomendo Racket para iniciantes, uma vez que fornece um dos melhores IDE para iniciantes em Scheme (ou melhor, iniciantes em programação que estão usando Scheme, ou melhor ainda, trabalhando seu caminho através do HtDP).
http://racket-lang.org/
Outra opção, para pessoas que estão mais interessadas em um pequeno sistema Scheme a fim de modificá-lo ou ler seu código-fonte, é o Larceny Scheme, que é de interesse em grande parte porque seu compilador JIT, Twobit, é implementado inteiramente no Scheme.
http://www.larcenists.org/
Atualização: Além disso, o Chez Scheme teve recentemente o código aberto:
https://github.com/cisco/ChezScheme
(Pode não ser tão "pequeno" quanto o Larceny, mas tem um compilador de otimização muito agressivo.)
fonte
Você pode querer dar uma olhada na Association of Lisp Users ou no Common Lisp Wiki para ver o que há. Eu me estabeleci com Steel Bank Common Lisp e Emacs, mas fiz pouco com eles até agora.
fonte
Se você está apenas programando por hobby, LispWorks tem uma versão pessoal gratuita que é bastante poderosa e sofisticada. Seu maior problema é um limite de tempo de execução de várias horas. Portanto, você não escreverá nenhum servidor de longa duração nele, mas isso não significa que não seja uma ferramenta útil.
CLISP roda em quase tudo e é muito bom, na verdade, ele simplesmente não faz threads. (Importante se você deseja escrever um servidor real, mas como PHP e Perl nos mostraram, Apache + [inserir linguagem] é uma plataforma muito viável.)
fonte
Clozure CL está disponível gratuitamente na mac store!
http://itunes.apple.com/us/app/clozure-cl/id489900618
fonte
Tenho me perguntado a mesma coisa ultimamente. Tendo usado o DrScheme no OS X, seria minha primeira escolha de distribuição do Scheme para qualquer plataforma. IDE muito bom, recursos de depuração e um bom conjunto de bibliotecas / frameworks (incluindo um kit de ferramentas GUI muito bom que 'simplesmente funciona ... mesmo no Mac' ;-))
No entanto, agora estou procurando um ambiente similarmente confortável para Common Lisp. Tudo se resumia a CCL (OpenMCL) versus SBCL. SBCL parece ser a escolha popular, mas eu li que no OS X ele não suporta threading. (Isso é realmente um problema?). O Clozure CL, por outro lado, possui um bom suporte para threads nativas, a ponte obcj, etc ...
Estou achando o CCL um pouco estranho, mas vou insistir por um tempo - ainda parece a escolha lógica para integração.
Eu uso Emacs 23 (construído a partir do código-fonte usando --with-ns) e Slime como um ambiente e isso funciona bem para mim. :-)
fonte
Eu descobri que o Chicken funciona bem para Scheme e está disponível através de homebrew.
A maior parte do código do SICP funciona com pequenas modificações.
fonte
Vá com Racket . Estou muito feliz com isso!
fonte