map
少し前に、を使ってどのように実装するかという「奇妙な」質問をされましたgrep
。今日私はそれをやろうとしました、そしてここに出てきたものがあります。私はPerlからすべてを絞り出しましたか、それとも他にもっと巧妙なハックがありますか?
#!/usr/bin/env perl
use strict;
use warnings;
use 5.010;
sub my_map(&@) {
grep { $_= $_[0]->($_) } @_[1..$#_];
}
my @arr = (1,2,3,4);
#list context
say (my_map sub {$_+1}, @arr);
#scalar context
say "".my_map {$_+1} @arr;
say "the array from outside: @arr";
say "builtin map:", (map {$_+1} @arr);