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

xが空リストでないとき

( append '(b c d) '(a) )

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

(cons 'b (append '( c d) '(a)) )

(define (append x z)

(cond ((null? x) z)

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

xが空リストでない

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

(append x z)