in reply to Scalar to a hash, what is that?
From perldata:
If you evaluate a hash in scalar context, it returns false if the hash is empty. If there are any key/value pairs, it returns true; more precisely, the value returned is a string consisting of the number of used buckets and the number of allocated buckets, separated by a slash. This is pretty much useful only to find out whether Perl's internal hashing algorithm is performing poorly on your data set. For example, you stick 10,000 things in a hash, but evaluating %HASH in scalar context reveals "1/16", which means only one out of sixteen buckets has been touched, and presumably contains all 10,000 of your items. This isn't supposed to happen.
I'm sure there's more that can be said about Perl's internal hashing algorithm, but perhaps someone else could fill that in because the internals of Perl are not my strong side.
--
dempa
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: Scalar to a hash, what is that?
by integral (Hermit) on Jan 28, 2003 at 18:59 UTC |