in reply to Re^2: map sub to list?
in thread map sub to list?
Yes. Assuming you want to keep the overkill of a function, you could either change the relevant line to:
sub f{ return $_ + 1 };or pass the $_ as an argument to the function:
use strict; use warnings; sub f{ return $_[0] + 1 }; my @a = (1, 2, 3); print join " ", map (f($_), @a);
I have added the join because you like functional programming. But the more common way to do such things is illustrated in the following Perl one-liner:
$ perl -e 'print join " ", map {$_ + 1} 1..4' 2 3 4 5
Talking of functional programming, note that the block of code after the map (the {$_ + 1} part) can be regarded as an anonymous function being applied by map onto each input element.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: map sub to list?
by pldanutz (Acolyte) on Sep 09, 2013 at 18:04 UTC | |
by Laurent_R (Canon) on Sep 09, 2013 at 19:05 UTC |