sexta-feira, 8 de julho de 2005

Porque lisp?

O lisp sempre me atraiu, afinal é a linguagem do emacs, "The One True Editor". Outra coisa que sempre me intrigou é ouvir todos aqueles programadores fodas sempre falavam bem do lisp e eu queria entender qual a vantagem.

O primeiro passo vou ler o livro "Practical Common Lisp", que está no site

http://www.gigamonkeys.com/book/

Ótima introdução, além de ver exemplos práticos entendi o que o lisp tem de diferente das outras linguagens: as macros.

Macro em lisp é algo muito diferente das macros em C. As macros em C fazem somente substituição de texo, já as macros em lisp são programas que geram programas. Isso só é possível devido a sintaxe simples do lisp, como programas são listas eles podem ser manipulados como qualquer outro tipo de dados.

Pena o lisp ser tão pouco conhecido aqui no brasil, nos falta aqui o peso de um departamento de computação como o do MIT que ensina lisp no primeiro ano da graduação.


Existem coisas que você deve usar no lisp tornam a sua vida bem mais fácil. A primeira delas é usar o debian, ele já vem com quatro implementações de lisp. Eu estou usando o SBCL e o CMUCL. Acho que o SBCL tem mais futuro, ele é mais moderno, mas algumas coisas ainda só rodam no CMUCL.
O debian também tem diversos pacotes para o Common Lisp já empacotados.


Outra coisa, use o emacs! Ele tem um modo chamado ilisp que já vem com o debian que eu achava legal, até conhecer o SLIME. Depois que você usa ele não quer saber de nenhum outro modo de lisp.

Ele não está na sarge, mas tem um repositório não oficial com ele, é só adicionar a linha abaixo no source.list:

deb http://commonwerx.org/software/contrib/slime/deb ./

Mas nem todas as bibliotecas estão empacotadas, para ver uma lista muito completa de pacotes vá no site do cliki, ele é uma espécie de CPAN para common lisp:

http://www.cliki.net/index

Em seguida aprenda como utilizar o asdf-install, que faz o mesmo trabalho do módulo CPAN do perl.


Depois de ler o "Practical Common Lisp" uma boa escolha é ler o OnLisp do Paul Graham, também está disponível de graça na rede. Nele você aprende os tópicos avançados a linguagem.

Nenhum comentário: