我正在尝试自己学习计划。有谁可以告诉我为什么'(quote quote)
会输出'quote
,'(quote 'quote)
会输出''quote
?
非常感谢!
答案 0 :(得分:5)
这个表达式:
'(quote quote)
...将'<something>
展开到(quote <something>)
后等同于(quote (quote quote))
,请注意符号quote
被引用两次,并且此表达式被评估并打印为''quote
。
另一方面,这个表达式:
'(quote 'quote)
...相当于(quote (quote (quote quote)))
,注意符号quote
被引用三次,并且此表达式被评估并打印为'''quote
答案 1 :(得分:3)
看看(免费,在线)How To Design Programs, intermezzo 2。它从列表和缺点的角度解释了引用。如果说明中的任何内容都没有意义,那么只需在教科书中备份一下。