(def-scheme-macro let (bindings &rest body) `((lambda ,(mapcar #'car bindings) ,@body) ,@(mapcar #'cadr bindings)))というマクロ定義で,局所変数 定義を与えた関数定義になります.
<cl> (scheme-macro-expand '(let ((a 1)) (list a))) ((LAMBDA (A) (LIST A)) 1) <cl> (comp-show '(let ((a 1)) (list a))) ARGS 0 CONST 1 FN ARGS 1 LVAR 0 0 ; A GVAR LIST CALL 1 RETURN CALL 1 RETURN