【发布时间】:2011-09-30 11:53:39
【问题描述】:
以下哪个表达式的lisp语法正确?
(+ 1 (quote 1))
==> 1 (???)
(+ 1 (eval (quote 1))
==> 2
我目前正在编写自己的 lisp 解释器,但不太确定如何正确处理引号。我看过的大多数 lisp 解释器都将这两个表达式都评估为“2”。但是不应该根本不评估报价,因此只有第二个是合法的表达吗?为什么它仍然有效?这是某种语法糖吗?
【问题讨论】:
标签: lisp eval interpreter evaluation quote