Categories
Programação Tutoriais

Como instalar Lisp no Debian

Como instalar suporte a linguagem de programação LISP no Debian (e outras distribuições Linux derivadas, como Ubuntu, Mint etc.)

O Debian tem aproximadamente 300 pacotes de softwares relacionados direta ou indiretamente à família de linguagens de programação Lisp.

Com especificações originalmente lançadas em 1958, o Lisp é a segunda linguagem de programação mais velha (ou madura), de alto nível e largamente usada nos dias de hoje.
A primeira colocada é Fortran, com um ano a mais.
— Wikipedia.

Claro que o Lisp mudou muito, no decorrer dos anos. Durante este tempo, deu origem a inúmeros dialetos — mas os que se consolidaram como mais importantes são o Common Lisp e o Scheme
Originalmente, a linguagem foi concebida para criar programas de notação matemática mais práticos — com o tempo, e rapidamente, se tornou a favorita para a pesquisa em inteligência artificial (IA).
O nome deriva da junção das palavras “LISt Processor” (processador de listas).
Enfim… se você está aqui, é por que já sabe de tudo isso. O que quer é instalar o suporte à linguagem de programação Lisp no Debian (ou em outra distro derivada dela).

Como obter uma relação de softwares de suporte ao Lisp no Debian

Use o apt search para pesquisar nos repositórios da sua distro pelos softwares relacionados a alguma palavra:


apt search lisp | less

Ou, para ser um pouquinho mais preciso:


apt search "common lisp" | less

Você pode obter mais informações sobre qualquer pacote com o comando apt show:


apt show common-lisp-controller


Package: common-lisp-controller
Version: 7.10
Priority: optional
Section: lisp
Maintainer: Debian Common Lisp Team 
Installed-Size: 62,5 kB

(...) 

Download-Size: 36,5 kB
APT-Sources: http://ftp.br.debian.org/debian testing/main amd64 Packages
Description: gerenciador de compilador e fontes do Common Lisp
 Este pacote ajuda a instalar os fontes e o compilador do Common Lisp.
 .
 Ele cria um cache de objetos compilados por usuário. Quando uma biblioteca
 ou uma implementação é atualizada, todos os objetos compilados no cache são
 descartados. Também fornece ferramentas para recompilar todas as
 bibliotecas e para gerar pacotes Debian a partir de pacotes asdf-install.
 .
 Também inclui clc-clbuild, um envoltório para o clbuild. Por favor, veja
 http://common-lisp.net/project/clbuild/ para mais informações.
 .
 Este pacote também contém um envoltório para invocar o emacs com um
 ambiente slime fornecido pelo clbuild.

Este mesmo pacote já traz muito do que você precisa para começar a programar em Lisp. Para instalá-lo, use o apt install:


sudo apt install common-lisp-controller 

A partir daí, já é possível rodar o SBCL, uma implementação do ANSI Common Lisp:


sbcl

A shell do sbcl permite executar os comandos Lisp.
sbcl lisp shell hello world
Para saber mais sobre outros programas já instalados no seu computador, voltados para a linguagem, use o apropos:


apropos lisp


register-common-lisp-implementation (8) - internal clc commands
clc-lisp (1)         - invoke lisp with clbuild active
clc-slime (1)        - invoke lisp with clbuild active
common-lisp-controller (3) - Common Lisp system management tool
lispmtopgm (1)       - convert a Lisp Machine bitmap file into pgm format
pgmtolispm (1)       - convert a portable graymap into Lisp Machine format
register-common-lisp-source (8) - internal clc commands
sbcl (1)             - Steel Bank Common Lisp
unregister-common-lisp-implementation (8) - internal clc commands
unregister-common-lisp-source (8) - internal clc commands

… ou volte a usar o apt search, como mostrei acima, para encontrar outras opções voltadas para a linguagem.

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

By Elias Praciano

Autor de tecnologia (livre, de preferência), apaixonado por programação e astronomia.
Fã de séries, como "Rick and Morty" e "BoJack Horseman".
Me siga no Twitter e vamos trocar ideias!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.