最初のページ 戻る 次へ 最後のページ

append2回目(巻き取り段階)

( append '(d) '(a) )

(cons (car '(d)) (append (cdr '(d)) '(a)) )

(cons d (append '() '(a)) )

(define (append x z)

(cond ((null? x) z)

(else (cons (car x) (append (cdr x) z))) ))

xが空リストでない

新しいappendを駆動(append2回目)

新しいappendの駆動

( append '() '(a) )

append(append2回目)の評価は'(a)