2012-09-01から1ヶ月間の記事一覧

make-syntactic-closure の練習

(define-syntax alet1 (sc-macro-transformer (lambda (expr use-env) (let ((it-expr (cadr expr)) (var (caddr expr)) (expr1 (cadddr expr)) (body (car (cddddr expr)))) `(let ((it ,(make-syntactic-closure use-env '() it-expr)) (,var ,(make-synta…

make-syntactic-closure の free-names のイメージ

(make-syntactic-closure environment free-names form) の free-names は,let で包むイメージでいいんだろうか. (let ((x 1)) (let-syntax ((foo (sc-macro-transformer (lambda (expr env) (let ((var (cadr expr))) (make-syntactic-closure var (list …