in reply to lowercasing during a match?

i can get you close... but you need a temp variable.

my $count; my %params = map { ++$count % 2 ? lc : $_ } $raw =~ /(\S+)\s*=\s*(\S+) +/g;
i guess you could take advantage of one of perl's predefined vars to save the my declaration, but you'll have to make sure it's okay to modify it in that scope...

my %params = map { ++$. % 2 ? lc : $_ } $raw =~ /(\S+)\s*=\s*(\S+)/g;
these are pretty obfuscated. why don't you do it in two clear steps instead?

~Particle *accelerates*