Function: car list
この関数は、コンスセル list の最初のポインタを返します。 list が nil の場 合 car は nil を返すよう、定義されています。アーギュメントがリストでない場 合、エラーになります。
(car '(a b c)) => a (car '()) => nil
Function: cdr list
この関数は、コンスセル list の 2 番目のポインタを返します。 list が nil の
場合 cdr は nil を返すよう、定義されています。アーギュメントがリストでない 場合、エラーになります。
(cdr '(a b c)) => (b c) (car '()) => nil
Function: car-safe object
この関数は、 (タイプの心配をせずに)どのようなアーギュメントに対しても呼ぶ ことができるようになっています。 object がコンスセルの場合 object の car を返し、そうでない場合 nil を返します。
(car-safe object) == (let ((x object)) (if (consp x) (car x) nil))
Function: cdr-safe object
この関数は、 (タイプの心配をせずに)どのようなアーギュメントに対しても呼ぶ ことができるようになっています。 object がコンスセルの場合 object の cdr を返し、そうでない場合 nil を返します。
(cdr-safe object) == (let ((x object)) (if (consp x) (cdr x) nil))
Function: nth integer list
この関数は、 integer で添字付けられた(訳注:indexed) list の要素を返します (最初の要素の添字は 0 です)。 list の要素の数が integer より小さい場合、 nil を返します。 integer が 0 未満の場合、最初の要素を返します。
(nth 2 '(1 2 3 4)) => 3 (nth 10 '(1 2 3 4)) => nil (nth -3 '(1 2 3 4)) => 1 (nth n x) == (car (nthcdr n x))
Function: nthcdr integer list
この関数は、 list の integer 番目の cdr を返します。 integer が 0 以下の場 合、 list 全てを返します。 list の要素の数が integer より小さい場合、nil を返します。
(nthcdr 1 '(1 2 3 4)) => (2 3 4) (nthcdr 10 '(1 2 3 4)) => nil (nthcdr -3 '(1 2 3 4)) => (1 2 3 4)