>quote と atom って必須なのかな?
quoteのかわりにeqが要るらしい

http://ja.wikipedia.org/wiki/%E7%B4%94LISP

五つの基本関数とは、

1. car リストの左値をとり出す。(car[(A . B)] -> A)
2. cdr リストの右値をとり出す。(cdr[(A . B)] -> B)
3. cons 二つの値からなるリストを作る。(cons[A;B] -> (A . B))
4. atom 値がアトムならTを返す。(atom[(A B)] -> nil, atom[nil] -> T)
5. eq 二つの値が同じ物ならTを返す (eq[A;A] -> T)

以上が最小構成のLISPであり、理論上チューリングマシンと同等の能力を持つ。