[-] zyni-moe@alien.top 1 points 11 months ago

nil being self-evaluating is not strange. Since nil is a symbol it can be defined as a constant. So there is nothing to stop a Lisp implementation saying (in CL):

(defconstant nil 'nil)

just the same as

(defconstant t 't)

What is strange is these things:

strange thing true in CL? true in elisp? true in Scheme?
() is a list but not a cons yes yes yes
() is both a list and a symbol yes yes no
() is self-evaluating yes yes no

zyni-moe

joined 11 months ago