Make-Procedure

(make-procedure arg-list statement-list) -> <closure>

Make-procedure looks very much like lambda. However, it is not:

Consider:
(let ((x 1)) (make-procedure () '(x)))
The resulting closure does not have access to the X bound by the let form.

Unlike (let ((x 1)) (lambda () x)) which does have access to X.