trace 接受一个过程作为参数,生成一个过程。这个过程跟原来的过 程接受同样的参数,只不过它会把自己的名字和输入的参数打印出来 之后在进行计算。
(define (trace fun) (lambda args (display "(") (display fun) (display " ") (for-each display args) (display ")") (newline) (apply fun args)))