in reply to Re: Answer: How do I empty out a hash?
in thread How do I empty out a hash?

That builds a list of keys up front - may or may not be a bad idea. If it is, I use each in scalar context to get something similar looking:
my $k; delete $hash{$k} while $k = each %hash;
(Incidentally, I'd write your version like so:)
delete $hash{$_} for keys %hash;

Makeshifts last the longest.