in reply to strange map behavior

This should work too and it's much easier to remember for me:
my %h = map { ("$_" => "$_") } @arr ;