Ambiente de Desenvolvimento para Common Lisp: Emacs + SBCL + CMUCL + Quicklisp + utilitários. Parte V: Instalação do CMUCL

O Carnegie Mellon University Common Lisp (CMUCL) é outra implementação open-source do Common Lisp que não é muito utilizada hoje em dia mas é interessante. O próprio SBCL, que instalamos na Parte IV desta série, é um fork do CMUCL.

O CMUCL também é mantido hoje em dia, mas com um ritmo menor do que o SBCL. O site do CMUCL ainda é bem antigo (e relativamente desatualizado) e muitas coisas estão sendo migradas para o GitLab, causando confusão para quem está vendo o CMUCL pela primeira vez. Para que uma pessoa que esteja conhecendo o CMUCL pela primeira vez possa se situar adequadamente, é necessário visitar dois sites:

Neste artigo faremos a instalação do CMUCL como uma alternativa ao SBCL!

1. Que versão instalar?

Para simplificar um pouco as coisas faremos a instalação dos binários para Linux já disponíveis, mas mesmo assim há uma decisão a ser tomada: devemos instalar uma release oficial antiga, ou uma versão snapshot atualizada?

Diferentes opções do CMUCL

O site de download do CMUCL tem várias opções mas as duas que nos interessam são as releases e os snapshots. Os releases são as versões “oficiais”, extremamente testadas e prontas para distribuição; os snapshots são versões intermediárias com correções de bugs ou funcionalidades adicionais, que foram colocadas à disposição, são estáveis, mas não foram tão testadas quanto as releases. Eventualmente um snapshot será lançado, após testes e possíveis correções, como uma release oficial.

Atualmente temos o seguinte:

  • Última release oficial: CMUCL 21d, lançada em 2018-12-08; e
  • Último snapshot: CMUCL 21e, lançado em 2021-07-06.

Uma lista com as informações sobre as releases e snapshots está disponível na Wiki do CMUCL. Se você quiser algo testado e estável, sem possíveis novas funcionalidades e correções de bugs, instale a release 21d. Se você quiser novas funcionalidades e correções de bugs ao preço de uma possível menor estabilidade, instale o snapshot 21e.

Farei a instalação do snapshot 21e.

2. Download e instalação

Faça o download do snapshot 21e para Linux e salve o arquivo em algum diretório temporário (faça o download pelo site do CMUCL ou use o comando abaixo):

mkdir cmucl-temp
cd cmucl-temp
wget https://common-lisp.net/project/cmucl/downloads/snapshots/2021/07/cmucl-2021-07-x86-linux.tar.bz2
wget https://common-lisp.net/project/cmucl/downloads/snapshots/2021/07/cmucl-2021-07-x86-linux.extra.tar.bz2

Note que fizemos o download de dois arquivos: o primeiro é a distribuição base do CMUCL, e o segundo (o que tem um “extra” no nome do arquivo) contém arquivos e bibliotecas opcionais.

Agora basta descompactar os arquivos para um diretório específico, por exemplo, cmucl-21e:

mkdir cmucl-21e
tar -jxvf cmucl-2021-07-x86-linux.tar.bz2 -C cmucl-21e
tar -jxvf cmucl-2021-07-x86-linux.extra.tar.bz2 -C cmucl-21e

Por fim eu gosto de colocar tudo dentro do diretório /opt, criando alguns links simbólico para acesso direto, fazendo:

sudo mv cmucl-21e /opt/
sudo ln -sfn /opt/cmucl-21e /opt/cmucl
sudo ln -sfn /opt/cmucl-21e/bin/lisp /opt/cmuls-21e/bin/cmucl

3. Ajuste das variáveis de ambiente

Devemos ajustar a variável PATH e criar a variável CMUCLLIB no arquivo ~/.bashrc (ou ~/.bashrc_profile, dependendo de sua distribuição Linux). Coloque algo como:

export PATH="/opt/cmucl/bin:/opt/sbcl/bin:$PATH"
export CMUCLLIB="/opt/cmucl/lib/cmucl/lib"

4. Hora da verdade

Abra um terminal, digite cmucl e tecle Enter. Se tudo correr bem você verá o prompt do CMUCL:

Teste do CMUCL: somando os números de 1 até 5 e saindo

Parabéns, agora temos o CMUCL instalado e configurado. Consulte a documentação para saber como ajustar algumas coisas na inicialização criando o arquivo ~/.cmucl-init.lisp, como carregar bibliotecas por exemplo.

Uma última observação: o CMUCL tem um editor de código embutido, o Hemlock. Ele é parecido com o Emacs, mas é bem mais espartano e difícil de usar. Como configuraremos o Emacs, não precisamos usar o Hemlock mas, se você for corajoso e quiser fazer uma viagem ao passado, precisará instalar algumas fontes que não são disponíveis por padrão. No Ubuntu faça:

sudo apt install xfonts-100dpi
sudo apt install xfonts-75dpi

[OPCIONAL] Se quiser pode instalar algumas fontes da Microsoft também:

sudo apt install ttf-mscorefonts-installer
Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *