("v" 1) 和 ("v" . 1) 之间的区别
Difference between ("v" 1) and ("v" . 1)
开始学习scheme,遇到这个:
有什么区别
("v" . 1)
和
("v" 1)
他们的工作原理似乎一样,只是想知道有什么区别。我倾向于使用("v" 1)
,但是( cons "v" 1 )
returns ("v" . 1)
。那么,有什么区别呢?
谢谢
("v" 1)
等于 (cons "v" (cons 1 '()))
或 ("v" . (1 . '()))
.
(foo . bar)
是当 cons-cell 不是正确列表时如何打印它。一个适当的列表是常量 '()
(表示空列表)或第二个元素是适当列表的cons-cell。一个正确的列表被打印为 (x1 x2 x3 etc)
,其中 xi
是每个 cons-cell 的第一个元素。
开始学习scheme,遇到这个:
有什么区别
("v" . 1)
和
("v" 1)
他们的工作原理似乎一样,只是想知道有什么区别。我倾向于使用("v" 1)
,但是( cons "v" 1 )
returns ("v" . 1)
。那么,有什么区别呢?
谢谢
("v" 1)
等于 (cons "v" (cons 1 '()))
或 ("v" . (1 . '()))
.
(foo . bar)
是当 cons-cell 不是正确列表时如何打印它。一个适当的列表是常量 '()
(表示空列表)或第二个元素是适当列表的cons-cell。一个正确的列表被打印为 (x1 x2 x3 etc)
,其中 xi
是每个 cons-cell 的第一个元素。