Common Lisp のインストールと Emacs で編集する環境を作る

Ubuntu 12.04 で Common Lisp を使ってみた。

処理系のインストール

調べると処理系がいくつかあることがわかる。 とりあえず、apt でインストールできるものはだいたいインストールしてみた。

apt-get install clisp gcl sbcl ecl sbcl-doc ecl-doc clisp-doc gcl-doc

以下では sbcl を使ってみた。

quicklisp

Common Lisp のライブラリを扱うには http://www.quicklisp.org/ を使うようだ。 http://www.cliki.net/ASDF-Install は obsolete になっている。

apt-get install cl-quicklisp

デフォルトだと ~/quicklisp にインストールされる。隠しディレクトリにしておきたいので ~/.quicklisp にインストールする。端末で

sbcl

として

(load "/usr/share/cl-quicklisp/quicklisp.lisp")
(quicklisp-quickstart:install :path ".quicklisp/")

とする。~/.sbclrc に設定を追加するには

(ql:add-to-init-file)

とする。

slime & ac-slime

Common Lisp で書かれたプログラミングを編集するのに Emacs の slime を使う。

apt-get install slime

で slime をインストールする。 https://github.com/purcell/ac-slime から ac-slime.el をダウンロードして Emacs が読みこむことができる適当なディレクトリに保存する。 そして ~/.emacs.d/init.el などに次のような設定を書き込む。

(when (require 'slime nil t)
  (setq inferior-lisp-program "sbcl")
  (slime-setup '(slime-repl slime-fancy slime-banner))
  (setq slime-net-coding-system 'utf-8-unix)
  (require 'ac-slime)
  (add-hook 'slime-mode-hook 'set-up-slime-ac)
  (add-hook 'slime-repl-mode-hook 'set-up-slime-ac))

slime がインストールされていないシステムでもエラーが起こらないようにした。

Emacs で M-x slime として拡張子が .lisp のファイルを開いて編集する。 C-c C-d から始まるキーバインドでドキュメントの表示が割り当てられている。 C-c C-d f で関数、 C-c C-d d でシンボルのドキュメントを見ることができる。

参考

Tags of current page