[QUOTE]\nnot according to the OO people. The NullClass is a recognised design pattern.\nThe claim is it simplifies things![/QUOTE]\n\nThe blog rant is about null references.\n\nA null object with a null class (like the nil object in Common Lisp, which is\nof class null) is a different beast from null references. Null references are\ninvalid values of their respective reference types: null reference to a String,\nnull reference to a Stream, etc.\n\nThis means that just because your method takes a string class doesn't mean\nyou're out of the woods; that argument may still be null.\n\nIn a OO language with a real nil, that wouldn't be the case: a method argument\nfor a string class would never receive a nil argument.\n\n(defmethod foo ((obj null))\n(write-line "null version of foo called"))\n\n(defmethod foo ((obj string))\n(write-line "string version of foo called"))\n\n(foo nil)\nnull version of foo called\n\n(foo "abc")\nstring version of foo called\n\nThe blog author calls for the abolishment of null references from high level\nlanguages. Evidently, he has never used one.