第四章习题 4.16 - 4.37 的解答。
E-4.16:
(a) 如果匹配到相应的变量再检查一下变量值是否为“unassigned”。
(define (lookup-variable-value var env)
(define (env-loop env)
(define (scan vars vals)
(cond ((null? vars)
(env-loop (enclosing-environment env)))
((eq? var (car vars))
(let ((v (car vals)))
(if (eq? v '*unassigned*)
(error
… 阅读全文…