我怎么能只通过第一项评估的S-体现在哪里?
(define (fn x y) (print x) (print y))
(eval '(fn a b))
我试图评估像这样的一个更大的表达,但解释是抱怨a
和b
变量不存在(未绑定变量)。
有什么我可以做离开的符号,因为他们是谁?
我一直试图找到这方面的信息,但我不能在任何地方找到它。
怎么样以下?
(let ((expr '(fn a b)))
(cons (eval (car expr)) (cdr expr)))
但请注意,如果你要依靠eval
,你几乎可以肯定做错事。