リストオペレータ
リストオペレータについていくつか.
consは(※)リストを作成する関数である.
> (cons 'f '(u g a)) (F U G A)このようにconsは第二引数のリストの先頭に第一引数を付加したリストを返す.また,引数を評価させないために,クォートしていることにも注意.
※consはconstructからきているらしい.
listもconsと同様,リストを作成する関数である.
> (list 'h 'o 'g 'e) (H O G E)これをconsで表現すると,以下のようになる.
(cons 'h (cons 'o (cons 'g (cons 'e nil)))) (H O G E)
carはリストの第一要素を取り出す.
> (car '(a b c d e)) Acdrはリストの第一要素以外を取り出す.
> (cdr '(a b c d e)) (B C D E)
first,second,third...tenthはリストの第n番目の要素を取り出す関数である.
> (first '(a b c d e f g h i j k)) A > (second '(a b c d e f g h i j k)) B > (third '(a b c d e f g h i j k)) C > (fourth '(a b c d e f g h i j k)) D > (fifth '(a b c d e f g h i j k)) E > (sixth '(a b c d e f g h i j k)) F > (seventh '(a b c d e f g h i j k)) G > (eighth '(a b c d e f g h i j k)) H > (ninth '(a b c d e f g h i j k)) I > (tenth '(a b c d e f g h i j k)) J
memberは第一引数が第二引数のリストに含まれるかどうかを調べる関数である.
> (member 'a '(a b c)) (A B C) > (member 'd '(a b c)) NILこのように,第一引数が第二引数に含まれていれば,第二引数のリストを返す.