Truth and Falsehood
The number 0, the strings '0' and "" , the empty list (), and undef are all false in a boolean context. All other values are true. Negation of a true value by ! or not returns a special false value. When evaluated as a string it is treated as "", but as a number, it is treated as 0. Most Perl operators that return true or false behave this way.
I'm assuming this is the missing piece of documentation that explains why defined always returns a defined value.
In reply to Re: defined defined -- Bug or "Feature"?
by Anonymous Monk
in thread defined defined -- Bug or "Feature"?
by roho
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |