* libsyntax now uses eval-core to evaluate its run-time expressions.
This commit is contained in:
parent
f14ac302f4
commit
260487b393
BIN
src/ikarus.boot
BIN
src/ikarus.boot
Binary file not shown.
|
@ -3,7 +3,6 @@
|
||||||
(export)
|
(export)
|
||||||
(import (scheme))
|
(import (scheme))
|
||||||
(define who 'chi-top-library)
|
(define who 'chi-top-library)
|
||||||
(define noexpand "noexpand")
|
|
||||||
(define-syntax no-source
|
(define-syntax no-source
|
||||||
(lambda (x) #f))
|
(lambda (x) #f))
|
||||||
(begin ;;; GOOD ONES
|
(begin ;;; GOOD ONES
|
||||||
|
@ -342,12 +341,9 @@
|
||||||
x]
|
x]
|
||||||
[(and (pair? x) (eq? (car x) '$rtd)) x]
|
[(and (pair? x) (eq? (car x) '$rtd)) x]
|
||||||
[else (error 'expand "invalid transformer ~s" x)])))
|
[else (error 'expand "invalid transformer ~s" x)])))
|
||||||
(define compile-time-eval-hook
|
|
||||||
(lambda (x)
|
|
||||||
(eval `(,noexpand ,x))))
|
|
||||||
(define make-eval-transformer
|
(define make-eval-transformer
|
||||||
(lambda (x)
|
(lambda (x)
|
||||||
(sanitize-binding (compile-time-eval-hook x))))
|
(sanitize-binding (eval-core x))))
|
||||||
(module (syntax-match)
|
(module (syntax-match)
|
||||||
(define-syntax syntax-match-test
|
(define-syntax syntax-match-test
|
||||||
(lambda (ctx)
|
(lambda (ctx)
|
||||||
|
@ -2025,7 +2021,7 @@
|
||||||
(install-library id name ver
|
(install-library id name ver
|
||||||
imp* vis* inv* exp-subst exp-env
|
imp* vis* inv* exp-subst exp-env
|
||||||
void ;;; FIXME
|
void ;;; FIXME
|
||||||
(lambda () (compile-time-eval-hook invoke-code)))
|
(lambda () (eval-core invoke-code)))
|
||||||
(invoke-library (find-library-by-name name))
|
(invoke-library (find-library-by-name name))
|
||||||
(build-void)))))
|
(build-void)))))
|
||||||
(define boot-library-expander
|
(define boot-library-expander
|
||||||
|
|
Loading…
Reference in New Issue