Problems? Is your data what you think it is? | |
PerlMonks |
Re^3: undef == 0?by Fletch (Bishop) |
on Oct 24, 2007 at 16:51 UTC ( [id://646943]=note: print w/replies, xml ) | Need Help?? |
As everyone else has asked, what number would you propose it be treated as? Perl doesn't have a single equality operator, it has two which operate on specific types of values:
A numeric value gets promoted to its string representation when used as a string. A string value gets converted to a numeric value (if possible; 0 if it's not a valid numeric representation) when used as a number. So when you consider what could be done with the "wrong" kind of value in a given context there's two possibilities:
Given that the second choice was made, again what other value would you expect? I might could see an argument being made for NaN, but the choice of 0 makes lots of things "just work" nicely (especially for things like quick 1-liners or 5 minute throw-away scripts where you really aren't that concerned with data validation).
In Section
Seekers of Perl Wisdom
|
|