%hash = map # the + before the parenthesis was a way of # disambiguating to Perl that the (...) is not the list # of arguments I'm passing to map(). but I don't need it ++$i % 2 ? # first increment $i... lc($_) : # if $i % 2 is 1, then lowercase the string $_ # otherwise, keep it as it is , # then our hash initialization list as normal... ( foo => 'BAR', This => 'thAT', THESE => 'Those', );