我正在Paul Graham的ANSI Common Lisp中进行练习.而且我有其他人练习的钥匙,这是:
http://www.shido.info/lisp/pacl2_e.html
在完成第3章的练习之后,我会参考该键逐一检查我的答案.当它达到代表时(a (b . c) d),我发现我无法理解Shido的答案,即:
http://www.shido.info/lisp/acl3-1d75.png
让我感到困惑的是,在他的回答d中没有跟着nil.
他的回答是对的吗?究竟什么是正确的代表(a (b . c) d)?
你可以使用sdraw程序:
(load "sdraw.generic.lisp")
(sdraw '(a (b . c) d))
[*|*]--->[*|*]------->[*|*]--->NIL
| | |
v v v
A [*|*]--->C D
|
v
B
Run Code Online (Sandbox Code Playgroud)
从这里你可以看出你的想法是正确的.