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.
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.
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.
- Site oficial de Common Lisp, apresentação sobre a linguagem e seu poder.
- Awesome-CL, uma lista imensa sobre frameworks e ferramentas para Common Lisp.
- Lisperati Casting, uma história em quadrinhos sobre a magia que é programar em Lisp.
- Common Lisp REPL Exploration Guide, um guia interessantíssimo sobre a exploração de Common Lisp pelo REPL.
- Common Lisp Hyperspec Sua primeira parada ao pesquisar por documentação de Common Lisp. (Mirror)
- CLiki, a Wiki de Common Lisp
- Common Lisp: A Gentle Introduction to Symbolic Computation, por David S. Touretsky
- [Amazon] Livro físico
- Versão online
- [Amazon] Land of Lisp: Learn to Program in Lisp, One Game at a Time!, por Conrad Barski
- [Amazon] Common Lisp Recipes: A Problem-Solution Approach, por Edmund Weitz
- Practical Common Lisp, por Peter Seibel
- [Amazon] Livro físico
- Versão online
Emacs é o melhor editor de texto em consenso para se programar em Common Lisp.
- [Inglês] Site oficial
- [Inglês] Prelude uma configuração com baterias pro Emacs para bons hábitos
- [Inglês] Mini-manual do Emacs, por tuhdo
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.
- [Inglês] Instalando SLIME + SBCL + Quicklisp no Emacs, por Astray_BI
- [Inglês] Repositório do =quicklisp-slime-helper=
Este pacote torna mais fácil a instalação do SLIME, a partir do Quicklisp.
- [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 é o gerenciador de pacote (sistemas nos jargões de CL), muito útil para integrar sua aplicação usando pacotes de terceiro.
- [Inglês] Site oficial do Quicklisp
- [Inglês] Lisp CookBook Getting Started (Quicklisp também incluso)
- [Inglês] Quickproject: crie o esqueleto de um projeto de Common Lisp
Este tutorial é extremamente útil para a criação de projetos compatíveis com Quicklisp.
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!
- next, um browser escrito em Common Lisp orientado a teclado Emacs-like usando WebKit
- =cl-neovim=, cliente de Common Lisp para Neovim
- =lisp-inference=, um motor de inferência baseado em Cálculo Proposicional, escrito em Common Lisp
- =lisp-chat=, um chat minimalista e experimental, escrito em Common Lisp
- =lispgames=, comunidade internacional de referência sobre desenvolvimento de jogos com Lisp, assim como Common Lisp
- Repositório de pequenos jogos com código aberto
Neste repositório, foram feitos, em Common Lisp, os mini-jogos
cl-2048
,cl-snake
edagarden
. - =starwar=, um jogo feito em Common Lisp usando SDL (Repositório) (Fork da nossa comunidade)
- Awesome-CL-software, uma lista sobre aplicações feitas em Common Lisp!
- [Inglês] Build Your Own Lisp, por Daniel Holder
- [Amazon] Livro físico
- Versão online
- YASWEG (Yet Another Static Website Generator), sintaxe para geração de websites estáticos, escrito em Guile Scheme.
- [Youtube/Inglês] Transcrição regravada da mini-palestra de Alan Turing Originalmente difundida na rádio BBC de Londres, em 15 de maio de 1951. Leitura por James Grime.
- Lista de links relacionados a Lisp e/ou à cultura cyberpunk em geral É provável que alguns destes links acabem integrados a esta lista.
- [Inglês] Comparativo entre os dialetos Common Lisp, Racket, Clojure e Emacs Lisp
- [Inglês] Estado do Ecossistema de Common Lisp (2015)
- [Youtube/Inglês] Playlist: Série Process Hacking