Accessor REST
rest
list => tail
(setf
(rest
list) new-tail)
list - リスト。ドットリストと循環リストを受け付けます。
tail - オブジェクト
rest
はcdr
としての操作と同じ動作をします。 覚えやすいようにfirst
を補完しています。 具体的には下記のとおりです。
rest list) == (cdr list)
(setf (rest list) new-tail) == (setf (cdr list) new-tail) (
rest '(1 2)) => (2)
(rest '(1 . 2)) => 2
(rest '(1)) => NIL
(setq *cons* '(1 . 2)) => (1 . 2)
(setf (rest *cons*) "two") => "two"
(=> (1 . "two") *cons*
なし。
なし。
なし。
rest
は、様式上としてcdr
よりも好まれる場合があり、 それは引数が主観的にコンスというよりもならリストとして見られるときです。