in reply to foreach keys over multiple hashes

Instead of using soft symbolic references, you could use hard references. For instance, something like this:
my %one; my %two; my %three; my @hashes = (\%one, \%two, \%three); for my $hash (@hashes) { for my $key (keys %$hash) { # do something } }

-- Mike

--
just,my${.02}