代码产生的结果是
((((()1)2)3)4)
而我们需要的是
(1(2(3(4))))
(define (square-list items)
(define (iter things answer)
(if (null? things)
answer
(iter (cdr things)
(cons answer (square (car things))))))
(iter items ()))
(define square
(lambda (x) (* x x)))
(square-list '(1 2 3 4))