Ambiente de Desenvolvimento para Scheme. Parte II: Configuração do Edwin e do Emacs

Se você seguiu a Parte I desta série de artigos, está com a MIT/GNU Scheme 11.2 instalada e configurada em seu sistema. Agora precisamos configurar alguma editor de texto para escrever código em Scheme e executar esses códigos. Aqui temos 2 opções:

  • Edwin: é um editor que vem junto com a MIT/GNU Scheme, baseado em uma versão antiga do Emacs, que foi modificado para o uso com a Scheme; ou
  • Emacs: podemos usar a versão mais nova do Emacs, junto com a biblioteca xscheme.

1. Configuração do Edwin

Ao instalar a MIT/GNU Scheme 11.2, você instala também o Edwin, o editor padrão criado pelo MIT (baseado em uma distriuição antiga do Emacs). Para iniciar o Edwin basta rodar o comando:

mit-scheme -edit

Você verá a janela padrão do Edwin:

As configurações padronizadas do Edwin não são muito atrativas visualmente mas podemos resolver isso facilmente acrescentando algumas configurações no arquivo ~/.edwin. Para facilitar mais ainda, vamos usar o arquivo distribuído para uso na MIT 6.945 (Don’t Panic!). Clique aqui e faça o download do arquivo prontinho, descompacte e salve em seu diretório $HOME. Depois inicie o Edwin novamente:

Com o tempo você aprenderá a ajustar o arquivo ~/.edwin para que ele fique mais adequado às suas preferências.

O Edwin tem diversos atalhos úteis para a criação e execução de código Scheme. Consulte a documentação para maiores informações!

2. Configuração do Emacs

A configuração do Emacs é simples, basta acrescentar duas linhas ao arquivo ~/.emacs:

(require 'xscheme)
(setq scheme-program-name "/opt/mit-scheme-11.2-x86-64/bin/mit-scheme")

Por exemplo, você pode acrescentar algo como:

Depois é só usar o Emacs para editar os códigos em Scheme e carregar a MIT/GNU Scheme para executar o código diretamente dentro do Emacs com o comando M-x run-scheme:

Assim você pode escrever E executar o código diretamente de dentro do Emacs:

3. Edwin ou Emacs?

Na maioria das vezes, por comodidade, eu utilizo o Emacs. Mas há ferramentas no Edwin que não estão disponíveis no Emacs como, por exemplo, o debugger/steeper passo-a-passo do Edwin. Então eu acabo utilizando o Edwin algumas vezes para estudar, debugar e entender melhor algum código.

Use os dois caso você precise!

Deixe um comentário

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