I rather like how Scheme treats boolean literals (#f and #t) as syntactically distinct from normal variables. The syntax feels tidier than overloading variable names. (Though I'm still amused that 0x12 is a valid variable name in emacs lisp!)