差異

2015-02-05 115 views
1

開始學習計劃,我碰到過這樣的:差異

是什麼

("v" . 1) 

("v" 1) 
之間的區別

他們似乎工作相同,只是想知道有什麼區別。我傾向於使用("v" 1),但(cons "v" 1)返回("v" . 1)。那麼,有什麼區別?

謝謝

+1

您可能會發現[計劃中的點符號](http://stackoverflow.com/q/20216711/1281433)有用。 –

回答

5

("v" 1)等於(cons "v" (cons 1 '()))("v" . (1 . '()))

(foo . bar)是cons-cell如何被打印,當它不是一個正確的列表。一個適當的列表是常量'()(代表空列表)或一個cons-cell的第二個元素是一個正確的列表。一個適當的列表被打印爲(x1 x2 x3 etc),其中xi是每個cons-cell的第一個元素。

+0

很酷,感謝解釋:) – Paladin