「基本的な 7 つの関数を実装すれば、LISP は作れる」という話をよく聞きます。僕はこのことに疑問を持っていました。和田先生が、「"Lisp 1.5 Programmer's Manual" の EVAL の定義を読むとよく分る」とおっしゃったので、お借りして読みました。 この本では、EVAL が M 式で書かれており、すんなり頭に入ってきません。そこで、Emacs Lisp で実装してみました。 表記 関数の名前は、Emacs とぶつからないように、全部大文字にします。ただし、読みにくい表記は、読みやすい表記に変えることにしました。 QUOTE → ' (QUOTE T) → t (QUOTE F) → nil NIL → nil 7 つの基本関数 さて、7 つの関数の定義です。 (defalias 'CAR 'car) (defalias 'CDR 'cdr) (defalias '