リスト修行
リストについての理解が足りていないような気がする。リスト修行 - /var/log/messagesを見てたら僕も修行したくなったので、リスト修行に励んでみたい。
リストを作ろう 練習問題 1
絶対間違えないという決意を胸に・・・。
gosh> (cons "hi" "everybody") ("hi" . "everybody") gosh> (cons 0 '()) (0) gosh> (cons 1 (cons 10 100)) (1 10 . 100) gosh> (cons 1 (cons 10 (cons 100 '()))) (1 10 100) gosh> (cons #\I (cons "saw" (cons 3 (cons "girls" '())))) (#\I "saw" 3 "girls") gosh> (cons "Sum of" (cons (cons 1 (cons 2 (cons 3 (cons 4 '())))) (cons "is" (cons 10 '())))) ("Sum of" (1 2 3 4) "is" 10)
うはぁ〜かなりドキドキしますね。
リストを作ろう 練習問題 2
回答はコメントに。
gosh> (car '(0)) ; 0 0 gosh> (cdr '(0)) ; () () gosh> (car '((1 2 3) (4 5 6))) ; (1 2 3) (1 2 3) gosh> (cdr '(1 2 3 . 4)) ; (2 3 . 4) (2 3 . 4) gosh> (cdr (cons 3 (cons 2 (cons 1 '())))) ; (2 1) (2 1)
修行はまだまだ続く。