【发布时间】:2016-11-17 17:08:37
【问题描述】:
我注意到在 Scheme、Racket 和 Clojure 中,表达式(在此处使用 Clojure)(and true '()) 的计算结果为 (),(and '() true) 的计算结果为 true。这不仅适用于空列表,也适用于任何列表。
但在 GNU CLISP 和 Emacs Lisp 中,(and t '()) 的计算结果为 nil,(and '() t) 的计算结果也为 nil,但 (and t '(1 2 3)) 的计算结果为 (1 2 3),(and '(1 2 3) t) 的计算结果为 t。
这是怎么回事?
【问题讨论】:
标签: clojure scheme common-lisp elisp racket