( 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)