最近でいうとLispを使いはじめるといったら比率的にはEmacs-Lispだろう。 最初に始める言語がLispという人はあまりいないだろう。おそらく、CとかPerl からプログラミングを始めて、ああ、プログラミングって自分でやるもんなんだ な、と感じた人がEmacsに出逢い、そしてなんかこれでもプログラミングできそ う、ってことでEmacs-Lispをちょっといじる人が多いのではないだろうか。
しかし、Emacs-Lispを「たんなるエディタのマクロ言語」としてとらえ、シェ ルスクリプトの延長みたいに、手続きと制御構造の列挙になっている事が多いの ではないだろうか。もちろん、それでもいい。だが、やっぱりEmacs-Lispも本当 のLispだ。せっかくやるなら「Lispのこころ」を理解したい。それがわかると、 他のプログラミング言語でのスタイルも変わる。その辺をできるだけ説明してみ たいと思う。
ここでは、Lispはだいたい書けるんだけどLispっぽくないなあ、と密かに感 じているという段階の初級Lispプログラマを想定して題材を選んで行きたいと思う。