我在网上环顾四周,找不到我的查询的答案。如果有人能在不降低这篇文章的评分的情况下提供一个好的答案,我将不胜感激。
在 Lisp中car
,cdr
用于数据模式'(whatever here)
,这对我来说很有意义。
现在,在Lisp Land of Lisp一书中,作者正在解释如何构建文本引擎,突然他使用以下描述来制作函数。
(defun describe-location (location nodes)
(cadr (assoc location nodes)))
我能问一下他为什么要在列表上做 cadr 吗?为什么它会提供响应而不是错误?它不应该是一种数据模式,即在左括号前有一个引号'(whatever here)
吗?
以及为什么他使用 assoc(assoc location nodes)
而不是(assoc 'garden *nodes*)
不是第二种正确的使用方法assoc
吗?我可能错过了大局,因此非常感谢有人解释这些关键点。
非常感谢!