http://www.perlmonks.org?node_id=999111


in reply to if (defined %hash) deprecated

Yes. From defined:

Use of defined on aggregates (hashes and arrays) is deprecated. It used to report whether memory for that aggregate had ever been allocated. This behavior may disappear in future versions of Perl. You should instead use a simple test for size:
if (@an_array) { print "has array elements\n" } if (%a_hash) { print "has hash members\n" }

Hope that helps,

Athanasius <°(((><contra mundum