(if '(nil nil)
'print-true
'print-false)
(if '(nil)
'print-true
'print-false)
In the code above, why does the Lisp interpreter always evaluate these forms to true (print-true). I thought nil represented false in Common Lisp.
I am using GNU CLISP.
nilis false. Anything else is true.'(nil)is a list with one element, namelynil.'(nil nil)is a list with two elements, namelynilandnil. Neither of these expressions is the same asnilby itself, soifsees it as true.