【发布时间】:2019-08-04 18:22:23
【问题描述】:
Scheme 编程语言说
程序:
(eval obj environment)返回:
obj表示的 Scheme 表达式的值 环境库:
(rnrs eval)如果
obj不代表语法上有效的表达式,eval引发条件类型为&syntax的异常。环境 由environment、scheme-report-environment和null-environment是不可变的。因此,eval也会引发一个 如果分配给任何 环境中的变量出现在表达式中。(define cons 'not-cons) (eval '(let ([x 3]) (cons x 4)) (environment '(rnrs))) (3 . 4) (define lambda 'not-lambda) (eval '(lambda (x) x) (environment '(rnrs))) #<procedure> (eval '(cons 3 4) (environment)) exception
obj 到 eval 的第一个参数必须是一个列表吗?
【问题讨论】: