In @array eq "", @array is a scalar string context. In scalar context, an array returns the number of elements it has (0). Furthermore, since a string is required, the number of elements is converted to a string ("0"). Finally, "0" eq "" is false, so the predicate won't get executed when the array is empty.
By the way, @array == 0 would work.
In reply to Re: differences between eq "" and !
by ikegami
in thread differences between eq "" and !
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |