Scheme 未定义的标识符,文件中的求值表达式
如何设置,以便我可以调用Scheme 未定义的标识符,文件中的求值表达式,scheme,eval,racket,Scheme,Eval,Racket,如何设置,以便我可以调用eval,对同一文件中定义的引用形式的过程进行评估 最低限度的例子。我将这三个表达式写入一个文件 #lang racket (define (foo x) x) (define bar (eval '(foo 1))) 当我加载文件时,我得到以下信息 eval-tests.rkt> ; foo: undefined; ; cannot reference undefined identifier ; Context: ; /Users/.../code
eval
,对同一文件中定义的引用形式的过程进行评估
最低限度的例子。我将这三个表达式写入一个文件
#lang racket
(define (foo x) x)
(define bar (eval '(foo 1)))
当我加载文件时,我得到以下信息
eval-tests.rkt>
; foo: undefined;
; cannot reference undefined identifier
; Context:
; /Users/.../code/gen-scheme/lib/eval-tests.rkt:1:1 [running body]
见
完成后,请阅读Matthew Flatt关于评估的精彩注释:
#lang racket
(define-namespace-anchor a)
(define ns (namespace-anchor->namespace a))
(define (foo x) x)
(define bar (eval '(foo 1) ns))