問題2.53、問題2.54、問題2.55 – SICP(計算機プログラムの構造と解釈)その67
2009年01月12日
問題2.53
(list 'a 'b 'c) gosh> (a b c) (list (list 'george)) gosh> ((george)) (cdr '((x1 x2) (y1 y2))) gosh> ((y1 y2)) (cadr '((x1 x2) (y1 y2))) gosh> (y1 y2) (pair? (car '(a short list))) gosh> #f (memq 'red '((red shoes) (blue socks))) gosh> #f (memq 'red '(red shoes blue socks)) gosh> (red shoes blue socks)
問題2.54
(define (equal? a b) (cond ((and (not (pair? a)) (not (pair? b))) (eq? a b)) ((and (pair? a) (pair? b)) (and (equal? (car a) (car b)) (equal? (cdr a) (cdr b)))) (else #f))) (equal? 'a 'a) gosh> #t (equal? 'a 'b) gosh> #f (equal? '(this is a list) '(this is a list)) gosh> #t (equal? '(this is a list) '(this (is a) list)) gosh> #f
問題2.55
(car ''abracadabra) gosh> quote
''abracadabra
は (quote (quote abracadabra))
に等しい。
(car (quote (quote abracadabra)))
は (car '(quote abracadabra))
に等しい。
したがって (car ''abracadabra)
は quote
と印字される。
計算機プログラムの構造と解釈
posted with amazlet at 08.11.07
ジェラルド・ジェイ サスマン ジュリー サスマン ハロルド エイブルソン
ピアソンエデュケーション
売り上げランキング: 6542
ピアソンエデュケーション
売り上げランキング: 6542