在中 然后说 回语列表等于列出列表的元素 引用。 一个语句必须是错误的,因为 所以也许这是一个非常挑剔的问题,但是像 ‘(a b c)
(无逗号(等于 ’(a b c)
也就是说,‘(a b c)
(无逗号(等于(list ’a ’b ’c)
。'(a b c)
和(list 'a 'b 'c)
似乎并不相等。后者是一个新鲜的列表(可以安全修改(,而前者是一个常数 - 或至少规格允许编译器这样对待。‘(a b c)
这样的后引用列表(无逗号(等于 '(a b c)
或等于 (list 'a 'b 'c)
?
当然(equal '(a b c) (list 'a 'b 'c))
返回t
,但是,正如您正确注意的那样,'(a b c)
是一个引号常数,而(list 'a 'b 'c)
是新鲜分配的。