in reply to using the define option

perldoc -f defined.

Quoth the Perldoc : "...You may also use defined() to check whether a subroutine exists. On the other hand, use of defined() upon aggregates (hashes and arrays) is not guaranteed to produce intuitive results, and should probably be avoided."

"This counterintuitive behaviour of defined() on aggregates may be changed, fixed, or broken in a future release of Perl." Unquoth the Perldoc.

This is why you're having problems. Also, remove that .sig. It's offensive.

Azatoth a.k.a Captain Whiplash

Make Your Die Messages Full of Wisdom!
Get YOUR PerlMonks Stagename here!
Want to speak like a Londoner?