I agree with the comments about the redundant
map. As for readability, I'm a big fan of judicious placement of carriage returns. When it comes to Perl's pipeline idioms, each
map or
grep is another step in the pipeline. That produces code like the following. I've left the redundant
map in to highlight the effect.
return
map { split(/ /, $_, 2) }
map { uc($_) }
@somearray
Sure, if the reader is very new to Perl, they don't understand pipeline idioms at all. However, if the idiom is formatted as consistently as possible, they can absorb it just as quickly as the chaining-return idioms of other languages, like
joe = foo().bar().baz().
--
[ e d @ h a l l e y . c c ]