http://qs321.pair.com?node_id=445808


in reply to Slicing multilevel hashes

A slice -- even a hash slice -- is not a hash. It's a list (that includes only the values components, not the keys). That's why the sigil is @ and not %. You cannot hash-dereference a list. As dragonchild astutely suggested, you can use map to get the effect you want.
map @{$_}{@keys}, @hoh{@keys};

Caution: Contents may have been coded under pressure.