2012-02-21 81 views
1

如果我做LISP CDR功能

(setq x '(NOT (NOT (NOT (NOT A))))) 

(cdr x)(NOT (NOT (NOT A))))

(cdr (cdr x))NIL

這是怎麼回事嗎?

+0

A的定義是什麼? – 2012-02-21 05:04:07

+1

我沒有定義它。 – CyberShot 2012-02-21 05:09:57

回答

7

恩,它不應該。 (cdr x)應該給你'((NOT (NOT (NOT A))))。 這意味着(NOT (NOT (NOT A)))(cdr x)的第一個元素。當再次cdr時,它是在一個元素列表中,所以你得到零'()

+2

如果你多解釋一下,它會顯示爲什麼(cdr(cdr x))是NIL。 – leppie 2012-02-21 05:52:42