的长度
(length (car '('(0)'(1 2 3)'(6 7))))
Run Code Online (Sandbox Code Playgroud)
正在展示2同时
(length (car '((0)(1 2 3)(6 7))))
Run Code Online (Sandbox Code Playgroud)
正确显示1.那么第一个表达式实际代表什么?
引号字符'是读者宏.'anything扩展到(quote anything).所以第一个表达式是:
(length (car (quote ((quote (0))
(quote (1 2 3))
(quote (6 7)))
Run Code Online (Sandbox Code Playgroud)
第一个quote导致参数按字面处理.这意味着它quote内部的表达式只是恰好以符号开头的列表quote.
因此该列表的CAR是子列表(quote (0)).它包含2个元素:符号quote和列表(0).