GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/elisp/List_002drelated-Predicates.html ・ emacs-doc.conao3.com

5.2 リストに対する述語

以下の述語は、Lispオブジェクトがアトムであるか、コンスセルまたはリストであるか、あるいは特殊オブジェクト nil であるかを判定します。(これらの述語の多くは他の述語を用いて定義できますが、非常に頻繁に使用されるため、個別に用意しておく価値があります。)

関数: consp object

This function returns t if object is a cons cell, nil otherwise. nil is not a cons cell, although it is a list.

関数: atom object

この関数は、object がアトムであれば t を、そうでなければ nil を返します。コンスセル以外のすべてのオブジェクトはアトムです。シンボル nil はアトムであると同時にリストでもあり、その両方の性質を持つ唯一の Lisp オブジェクトです。

(atom object) ≡ (not (consp object))
関数: listp object

この関数は、object がコンスセルまたは nil である場合に t を返します。それ以外の場合は、nil を返します。

(listp '(1))
     ⇒ t
(listp '())
     ⇒ t
関数: nlistp object

この関数は listp の逆の動作をします。object がリストでない場合は t を返し、そうでない場合は nil を返します。

(listp object) ≡ (not (nlistp object))
関数: null object

この関数は、object が nil であれば t を、そうでなければ nil を返します。この関数は not と同一ですが、明確性を期すため、object が真値とみなされる場合は not を(条件の組み合わせ用構文 の not を参照)、それ以外の場合は null を使用します。

(null '(1))
     ⇒ nil
(null '())
     ⇒ t
関数: proper-list-p object

この関数は、object が正当なリストであればその長さを、そうでなければ nil を返します(リストとコンスセルを参照)。正当なリストは、listp を満たすことに加え、循環しておらず、またドット付きでもありません。

(proper-list-p '(a b c))
    ⇒ 3
(proper-list-p '(a b . c))
    ⇒ nil