fix many bugs around sc

This commit is contained in:
Yuichi Nishiwaki 2014-07-19 11:20:54 +09:00
parent d6b6376408
commit 8a1d068519
1 changed files with 4 additions and 3 deletions

View File

@ -77,7 +77,7 @@
(vector-map proc expr) (vector-map proc expr)
(proc expr))))) (proc expr)))))
(define (make-syntactic-closure form free env) (define (make-syntactic-closure env free form)
(define cache (make-dictionary)) (define cache (make-dictionary))
(walk (walk
(lambda (atom) (lambda (atom)
@ -90,10 +90,11 @@
(begin (begin
(define id (make-identifier atom env)) (define id (make-identifier atom env))
(dictionary-set! cache atom id) (dictionary-set! cache atom id)
id))))))) id)))))
form))
(define (close-syntax form env) (define (close-syntax form env)
(make-syntactic-closure form '() env)) (make-syntactic-closure env '() form))
(define (sc-macro-transformer f) (define (sc-macro-transformer f)
(lambda (expr use-env mac-env) (lambda (expr use-env mac-env)