Настройка окружения

Для того, чтобы начать программировать на лиспе лучше всего настроить среду. Можно конечно этого не делать и при каждой компиляции страдать. Думаю смысла в этом не так много. Поэтому приступим к настройке. Сначала установим сам компилятор-интерпретатор sbcl. Поскольку у меня linux, то расскажу как делать это на нём. Для поклонников mac os или windows действия не должны слишком отличаться. Если у вас debian-подобная система (как у меня), то всё довольно просто пишете:

sudo apt-get install sbcl

sbclbutton

Аналогично нужно установить emacs, slime и swank.

sudo apt-get install emacs slime cl-swank

Зачем нужно ставить swank я не знаю, но его почему-то всегда ставят со slime, если когда-нибудь я разберусь с этим вопросом, то напишу здесь. Делать так, как написано сверху я не рекомендую по причине того, что в репозиториях debian обычно довольно старые версии пакетов. Поэтому я рекомендую скачать всё с официальных сайтов/репозиториев и собрать если нужно:

git clone git://git.code.sf.net/p/sbcl/sbcl
sbcl/make.sh
sudo sbcl/install.sh

После компиляции и установки можно проверить версию:

/usr/local/bin/sbcl --version

Должно быть что-то вроде SBCL 1.3.10.

Emacs лучше скачать с официального сайта, на сегодня версия последняя это 25.1, устанавливать его чуть подольше, сначала нужно сконфигурировать установщик, затем собрать и установить:

cd emacs/
./configure
make
sudo make install

Что ещё? Ещё мне нравится менеджер пакетов quicklisp. С помощью него можно будет установить slime:

curl -O https://beta.quicklisp.org/quicklisp.lisp
curl -O https://beta.quicklisp.org/quicklisp.lisp.asc
gpg --verify quicklisp.lisp.asc quicklisp.lisp
sbcl --load quicklisp.lisp

Затем уже внутри sbcl стоит написать:

(quicklisp-quickstart:install)
(ql:add-to-init-file)
(quit)

Вот таким нехитрым образом мы настроили себе компилятор. В следующих записях расскажу как настроить emacs. Думаю это будет не один пост, поскольку настройка emacs не такая тривиальная вещь.

Настройка окружения: 1 комментарий

  1. Уведомление: Quicklisp - Lisp-fan

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.