SICP 2.5
更に別のcar, cdr, consの表現。あまり面白い問題じゃないな。
(define (_cons a b) (* (expt 2 a) (expt 3 b))) (define (pow n m) (let ((rem (remainder n m)) (quot (quotient n m))) (if (= 0 rem) (+ 1 (pow quot m)) 0))) (define (_car z) (pow z 2)) (define (_cdr z) (pow z 3)) (define p (_cons 5 6)) (_car p) (_cdr p)
組み込み手続きeven?を使った方が短く書ける。