空想犬猫記

※当日記では、犬も猫も空想も扱っておりません。(旧・エト記)

SLIMEの勉強

Emacs Lispの実装を見たら,etolispやる気無くしたんで,次のアイデアが熟すまで,しばらくLispで実用的なプログラムを書いて遊ぶことにした*1。開発環境は,どうやらSLIMEというものが標準的なようなので,それを利用する。

Paul Grahamの赤い本の次はPractical Common Lisp。開発環境の使い方から丁寧に書いてあって分かり易い。SLIMEを使ったインクリメンタルなソフトウェアの開発,楽しいなぁ。

私が利用してるのは

の組み合わせ。ドキュメントの通りに.emacsに数行追加しただけで何の問題も無く動いていた。こんな感じ。

(setq inferior-lisp-program "/opt/local/bin/sbcl --noinform")
(setq slime-lisp-implementations '((sbcl ("sbcl") :coding-system utf-8-unix)))
(require 'slime)
(slime-setup)

今日覚えた呪文は

C-c C-c ... defun をその場でコンパイルして反映
C-c C-k ... バッファ全体をその場でコンパイルして反映
C-c C-z ... REPL バッファにジャンプ
C-c C-q ... 開いている括弧をその場で全部閉じる
M-. ... 関数の定義にジャンプ
M-, ... ジャンプ先からリターン

これだけでだいぶ,楽にコーディングできるようになった。

追記:M-x describe-mode で利用可能なコマンドを全てリストアップできます

*1:軸がぶれてますなぁ

*2:SBCLのメンテナの人は最近,Googleに就職したようだ...