Here's a related question, perhaps suitable for meditation: If I initialize a hash with redundant keys, do I get predictable results? That is, are the following two examples equivalent?
%a = (one => 'eins',
two => 'zwei',
three => 'drei',
one => 'uno');
%b = (one => 'eins',
two => 'zwei',
drei => 'drei');
$b{one} = 'uno';