Though it's nice to show different ways to do it, I feel obliged to point out
that many folks disapprove of using map in void context.
Though map in void context no longer suffers the huge performance penalty it once
did, some still consider it poor style
(see, for example, the performance-related discussion in this old thread).
I personally applaud the simple stylistic advice summary given in
Effective Perl Programming, in the item
"Use foreach, map and grep as appropriate", namely:
- Use foreach to iterate read-only over each element of a list
- Use map to create a list based on the contents of another list
- Use foreach to modify elements of a list
- Use grep to select elements in a list
because I find the code clearer and easier to maintain if everyone in my team follows those four simple rules.
Note that Perl::Critic provides a ProhibitVoidMap
policy to allow the code police to prohibit using map in void context.