最小限のCommon Lisp環境(Emacs+SLIME)の作成


Linuxでの操作を想定していますが、流れはWindows等でも変わらないと思います。
自分用メモなので読みにくいかも、です。

ソフトのインストール

Emacsのインストール

http://gnu.org/s/emacs から自分の環境に合ったものをダウンロードするか、aptやyumなどで入手する。
Emacs24を想定。
(追記 2016/09/27: Emacs25でも変わらないと思います)

Common Lispのインストール

aptやyumなどでインストールするか、インストーラを使う。パスの通ったフォルダに展開してもよい。
SBCL(http://sbcl.org) がオススメ。
Clozure CL(http://ccl.clozure.com)
CLISP(http://clisp.org)
CMUCL(http://www.cons.org/cmucl)
でもよい。

.emacs.dの作成

ここで一度Emacsを起動しておく

$ emacs

特に今はファイルを編集しないので、終了させる。
終了するには、

C-x C-c

とすれば終了する。(C-xはCtrlキーを押しながらx、の意、C-cも同様)。
これで、ホームディレクトリの下に.emacs.dディレクトリが作成された。

SLIMEのインストール

SLIMEのページ(https://github.com/slime/slime/releases) から最新版をダウンロードして展開し、~/emacs.d/以下に配置する。

Gitが使えるなら

$ cd ~/.emacs.d/
$ git clone https://github.com/slime/slime.git

とする。

環境設定

init.elの作成

~/.emacs.d/ 以下にinit.elというファイルを作成する。

$ touch ~/.emacs.d/init.el
$ vi ~/.emacs.d/init.el #お好きなエディタで

以下を記述。

init.el
;; SBCLをデフォルトのCommon Lisp処理系に設定
(setq inferior-lisp-program "sbcl")
;; ~/.emacs.d/slimeをload-pathに追加
(add-to-list 'load-path (expand-file-name "~/.emacs.d/slime"))
;; SLIMEのロード
(require 'slime)
(slime-setup '(slime-repl slime-fancy slime-banner)) 

SLIME起動

$ emacs

としてEmacsを起動する。
画面に特にエラーが出ていないことを確認する。

最後に

M-x slime

(Altキーを押しながらx, slimeと入力)をするとSLIMEが起動する。

画像はubuntu server14.04で起動させた様子です

あとはCL-USER> と書かれた部分に入力していけばLispが楽しめます!

Emacsの使い方は各自調べてください。

例:http://yohshiy.blog.fc2.com/blog-entry-256.html

GNU公式ドキュメントは ”Documentation” の項目にあります
http://www.gnu.org/software/emacs/

リンク

Common Lispをさらに勉強したい方は、書籍をあたるか、Webで情報を探してください。
いくつか無料で読める入門記事を紹介します。

日本語での入門記事

M.Hiroi's Home Page / xyzzy Lisp Programming

xyzzyというWindows向けテキストエディタでプログラミングをする話ですが、基礎的な文法はほぼ同一なので入門程度なら大丈夫だと思います。

初めての人のためのLISP[増補改訂版]

http://www.amazon.co.jp/dp/4798119415
どちらかと言うと読み物に近いです。
主にLispの設計思想が書かれており、理解の助けになると思います。

英語

Plactical Common Lisp

http://www.gigamonkeys.com/book/
Common Lispの比較的有名な入門書です。
和訳版が
「実践 Common Lisp」(http://www.amazon.co.jp/dp/4274067211)
という書籍で出ています。
英語が読める方なら無料で読めます。

On Lisp

日本語 http://www.asahi-net.or.jp/~kc7k-nd/onlispjhtml/
原著 http://www.paulgraham.com/onlisp.html
こちらは発展的内容になりますが、入門書程度では物足りない方はどうぞ。

謝辞

以下のサイトを参考にさせて頂きました。ありがとうございます。

追記

  • (2015/09/26 18:05) CMUCLへのリンクURLが間違えていたので訂正しました。
  • (2015/09/26 18:42) リンクの項目を追加
  • (2016/06/16 20:51) もうちょっとモダンな使い方を知りたい人はroswellで調べるといいよ https://github.com/roswell/roswell