【发布时间】:2011-02-22 01:43:20
【问题描述】:
“Lisp 表单”的具体定义是什么?
据我所知,它是“以符号作为第一个元素的原子或列表”。
但是,这(在 Scheme 中)不会是一种形式:
((lambda () 42)) ;; The answer to Life, the Universe and Everything.
因为列表的第一个元素本身就是另一个列表。在它被评估之后,它将是一个过程(而不是一个符号)。
我可以找到几个不同的网站和教程讨论 Lisp 表单,但没有一个给出完整和详细的定义。在哪里可以找到?
【问题讨论】:
-
这实际上是一个有效的 lisp 表单和程序。我想我下面的定义会和你得到的一样详细,不确定我是否忘记了什么,但我相信它是详尽的。
-
在 Clojure 中:
((fn [] 42))