問題 2.24
(list 1 (list 2 (list 3 4))) ;-> (1 (2 (3 4))) ;consにすると、 (cons 1 (cons 2 (cons 3 4))) ;-> (1 2 3 . 4) ;にているようで違う。 ;どのような意味の違いがあるのか? (list 1 (list 2 (list 3 4))) ;-> (1 (2 (3 4))) (cons 1 (cons (cons 2 (cons (cons 3 (cons 4 null)) null)) null)) ;-> (1 (2 (3 4))) ;listの場合は、cdr部にはかならず次のconsが入り、 ;おわりには必ずnullが入る。 ;consは単にポインタの箱であり、listはconsの箱である。 ;リスト構造の木 ; . ; | | ; 1 | | ; 2 | | ; 3 4 ;こんな感じでわかるだろうか?