Ah, bugger. I should have been more clear. You're absolutely right that it's very unclear what a given NULL should mean. What I meant was that the behavior of NULL is very clear and predictable, regardless of meaning. There are rare cases where you get a false negative, but unlike undef, you generally don't get a false positive. That's a trade-off I prefer, though I can see that many others don't.
|Comment on Re^2: "undef" is not NULL and what to do about it|