在书中的'lisp之乡'我读过
因为case命令使用eq进行比较,所以它通常仅用于对符号值进行分支.除其他外,它不能用于分支字符串值.
请解释原因?
在学习cons,cdr并且car处理列表我尝试以下操作:
(cadr '('(1) '(2)))
'(2)
Run Code Online (Sandbox Code Playgroud)
它按预期给出列表中的第二项.以下给出:
(cdadr '('(1) '(2)))
((2))
Run Code Online (Sandbox Code Playgroud)
数据如何与代码协调一致,仍然没有给出错误?
这是如何评估的?
cdr on'(2)应该给nil,这是.为什么不上面?
[我是clisp和stackoverflow的新手,所以请原谅我.]