Next: List Elements, Previous: Lists as Boxes, Up: Lists
以下の述語は、Lispオブジェクトが、アトムであるか、
コンスセル、つまり、リストであるか、
特別なオブジェクトnil
であるか調べます。
(これらの多く述語は、それぞれ残りの述語で定義可能である。
しかし、多用するため、これらすべてを用意しておく価値がある。)
この関数は、objectがアトムならば
t
を返し、 さもなければnil
を返す。 コンスセルを除くすべてのオブジェクトはアトムである。 シンボルnil
はアトムでもありリストでもある。 このようなLispオブジェクトはnil
だけである。(atom object) == (not (consp object))
この関数は、
listp
の反対である。 objectがリストでなければt
を返す。 さもなければnil
を返す。(listp object) == (not (nlistp object))
この関数は、objectが
nil
ならばt
を返し、 さもなければnil
を返す。 この関数は、not
と同一であるが、意図を明確にするために、 objectをリストと考えるときにはnull
を使い、 objectを真理値と考えるときにはnot
を使う (Combining Conditionsのnot
を参照)(null '(1)) nil (null '()) t