in reply to non-autovivifing hash
if you're using perl 5.008, Hash::Util is in the core. you'll find the lock_keyssubroutine helpful.
~Particle *accelerates*