-
(quota x)
返回x
。为了可读性,我们把(quota x)
记为'x
(quota意味着引用)。
> (quota a)
a
> 'a
a
> (quota (a b c))
(a b c)
-
(atom x)
,当x
是一个原子或者空列表时,返回原子t
,否则返回()
。在Lisp中,通常用原子t
代表真用空列表代表假。
(atom 'a)
t
(atom '(a b c))
()
(atom '())
t
既然我们有了一个参数会被求值的操作符,那么就可以展示quota
(引用)是如何使用的。通过引用一个列表,可以避免列表被求值。如果一个没有被引用的列表,作为参数,传递给一个类似atom
这样的操作符,就会被视作为代码:
> (atom '(atom a))
()
这和英语中我们使用引用的方式相同。剑桥是一个位于马塞诸塞州,拥有90000人口的小镇。“剑桥”(Cambridge)是一个包含了9个字母的单词。