(wat-aro)

生きてます

2015-11-22から1日間の記事一覧

SICP 問題 3.26

(define (make-table) ;; tree (define (make-tree key value left-branch right-branch) (list key value left-branch right-branch)) ;; 選択子 (define (key-tree tree) (car tree)) (define (value-tree tree) (cadr tree)) (define (left-branch tree) …

SICP 問題 3.25

;; keyではなくkey-listを'(x y z)という形で渡す ;; key-listのcdrがnullになるまで再帰すればkeyの数がいくつでも対応できる (define (make-table) (let ((local-table (list '*local-table*))) (define (lookup key-list) (let loop ((key-list key-list)…

SICP 問題 3.24

assocをequal?以外を使ってテストできるようにする. make-table手続きはキーの等価性に使うsame-key?手続きを引数にとる. (define (make-table same-key?) (define (assoc key value records) (cond ((null? records) #f) ((same-key? key (caar records))…