| > That is not even close to being true. In C, NULL is equal to itself. In C++, nullptr is equal to itself. In Java, null is equal to itself. Same in C#. In JavaScript, null is equal to itself, and so is undefined. > You're confusing None with NULL, like everyone else. Only a very few programming languages make this error. Not so, as I've just shown. SQL takes the philosophy that NULL isn't a value, but a marker for the absence of a value, and gives it special treatment so that it is not treated as equal to itself. Most programming languages do not take this approach, they instead treat null as a special value, special in that dereferencing it is disallowed, but it's still subject to the usual comparison rules (i.e. it's equal to itself). Your contrasting of None again NULL isn't meaningful. They're just words. The semantics depend on the language. > NULL is undefined Depends on the language. In C it's defined as 0, roughly speaking. (Curiously the bit-pattern used to represent NULL is not required to be zero. [0]) As a curious aside, in C, the special float value NaN is not equal to itself. [0] https://stackoverflow.com/a/9894047/ |