本文
2.2.2 階層構造
問題解答
問2.24
図を載せるのは割愛。
問2.25
(define v (list 1 3 (list 5 7) 9)) (car (cdr (car (cdr (cdr v)))))
(define v (list (list 7))) (car (car v))
(define v (list 1 (list 2 (list 3 (list 4 (list 5 (list 6 7))))))) (car (cdr (car (cdr (car (cdr (car (cdr (car (cdr (car (cdr v))))))))))))
解答を見るとこんな感じだった。
(cadadr (cadadr (cadadr v)))
このあたり、ちょっとググるとゲシュタルト崩壊を起こしそうな解説が、、、、
問2.26
まずは挙動を予想。
(append x y) → (1 2 3 4 5 6)
(cons x y) → ((123) (456))
(list x y) → ((123) (456))
gosh> (append x y) (1 2 3 4 5 6) gosh> (cons x y) ((1 2 3) 4 5 6) gosh> (list x y) ((1 2 3) (4 5 6))
cons を間違えていました。cons と list がきちんと分けて考えられていなかったっぽいです。