npt-japanese

% Function LIST, LIST*

UP


Function LIST, LIST*

Function LIST, LIST*

構文

list &rest objects => list
list* &rest objects+ => result

引数と戻り値

object - オブジェクト
list - リスト
result - オブジェクト

定義

listは、引数objectsを含むリストを返却します。

list*listと似ていますが、 listの最後の引数は、最後のコンスのcarになるのに対し、 list*の最後の引数は、最後のコンスのcdrになるのが違っています。 したがって、list*の呼び出しは、 同じ数の引数のlistの呼び出しより、 つねに1つ少ないコンスで生成されます。

もしlist*の最後の要素がリストのときは、 list*の先行した引数の要素が前の方に追加された、 新たなリストを構築する効果があります。

list*がただひとつのobjectを受け取った場合、 それがリストかどうかに関わらず、そのobjectが返却されます。

例文

(list 1) =>  (1)
(list* 1) =>  1
(setq a 1) =>  1
(list a 2) =>  (1 2)
'(a 2) =>  (A 2)
(list 'a 2) =>  (A 2)
(list* a 2) =>  (1 . 2)
(list) =>  NIL ;i.e.,  ()
(setq a '(1 2)) =>  (1 2)
(eq a (list* a)) =>  true
(list 3 4 'a (car '(b . c)) (+ 6 -2)) =>  (3 4 A B 4)
(list* 'a 'b 'c 'd) ==  (cons 'a (cons 'b (cons 'c 'd))) =>  (A B C . D)
(list* 'a 'b 'c '(d e f)) =>  (A B C D E F)

副作用

なし。

影響

なし。

例外

なし。

参考

cons

備考

(list* x) ==  x

TOP, Github