在以下Lisp REPL交互中:
CL-USER> (defparameter *unison* 0)
*UNISON*
CL-USER> (member *unison* '(*unison*))
NIL
为什么nil返回?
答案 0 :(得分:5)
由于*unison*
变量已绑定到0
,因此该列表仅引用*unison*
符号。比较一下这个:
(member *unison* (list *unison*))
这实际上会评估返回*unison*
的第二个0
,从而产生(0)
列表。