Gaucheのlist
二重リスト
((1 2) (3 4))
'を付けてデータであることを明示する
'(1 2 3)
そうじゃないと1という関数に2,3を引数で与えたと解釈される
関数
headと同じ
tailと同じ
cons
(cons 1 '(2 3))
list
リストを作る
(list 1 2 3)
null?
空リストならtrue
pair?
空じゃないリストならtrue
リスト以外も引数に取れるので「null?の逆」とは言えないmrsekut.icon
fold
code:lisp
(fold + 0 '(1 2 3 4 5))
1 . 2
(cons 1 2)とかを実行すればこう表示される
本来はconsの最後の部分は()であるべきだが、そこに数値が入ってる
本来は(cons 1 (cons 2 '()))だけど、という感じmrsekut.icon