Skip to content

Latest commit

 

History

History
161 lines (119 loc) · 8.67 KB

index.org

File metadata and controls

161 lines (119 loc) · 8.67 KB

Common Lisp Brasil

Grupo oficial do Telegram: Common Lisp Brasil

Grupo não-oficial de Lisp Brasileiro IRC freenode: #lisp-br

Os dados a seguir podem estar incompletos ou conter erros. Proceda com cuidado e, se você tiver uma sugestão ou reclamação, abra uma issue no repositório desta página.

Conceitos e Fundamentos

O que é Lisp?

Dialetos Lisp (abreviação de **LISt Processing**, processamento de listas) têm uma sintaxe singular baseada no uso de parênteses para denotar de símbolos, que podem ou não estarem associados a valores e/ou procedimentos. Nos Lisps, há a peculiaridade de existir uma linha muito tênue de separação entre dados e procedimentos quando seu código é produzido (na realidade, é possível produzir código a partir de dados e vice-versa).

Esta família de linguagens foi desenhada para abstrair a complexidade do hardware de um computador, criando uma interface para que um humano possa se comunicar de maneira expressiva com a máquina. O primeiro Lisp denotado historicamente por LISP foi criado por John McCarthy em 1958 nos laboratórios do MIT, USA.

O que é Common Lisp?

Common Lisp é uma implementação específica da linguagem de programação Lisp multi-paradigma que suporte programação funcional, orientação a objetos e por vezes funcional. Foi criada por Guy L. Steele nos anos ‘80 com o intuito de combinar aspectos de diversos dialetos anteriores, incluindo Scheme.

Em 1994 foi publicada no padrão ANSI Information Technology - Programming Language - Common Lisp, registro X3.226-1994 (R1999) É bem maior e semanticamente mais complexa que Scheme uma vez que foi projetada para ser uma linguagem comercial e ser compatível com os diversos dialectos Lisp dos quais derivou.

Links de Aprendizado sobre Common Lisp

Apresentação

Documentação e tutoriais

Livros

Tooling

Emacs

Emacs é o melhor editor de texto em consenso para se programar em Common Lisp.

SLIME

SLIME significa SUPERIOR LISP INTERACTION MODE for EMACS. É uma das coisas mais fascinante que se faz Common Lisp uma linguagem tão produtiva e o Emacs ser seu editor ideal.

Compiladores

  • [Inglês] SBCL: Steel Bank Common Lisp (recomendado)
  • [Inglês] ECL: Embedabble Common Lisp
  • [Inglês] GNU CLISP (obsoleto desde 2010, artefato histórico)
  • [Inglês] CCL: Clozure Common Lisp (Clojure é outra coisa, não confunda!)

Quicklisp

Quicklisp é o gerenciador de pacote (sistemas nos jargões de CL), muito útil para integrar sua aplicação usando pacotes de terceiro.

Roswell

Roswell é descrito como ser o instalador de lisp e launcher para o ambiente em geral de Common Lisp que simplesmente funciona. Tenta automatizar a instalação dos compiladores, pacotes do emacs e criação de binários com Common Lisp. Vale a pena tentar dar uma olhada!

Projetos

Apêndice: Referências amplas