in reply to Re^2: Getting a list of aliases to selected items from a list of array references (unroll)
in thread Getting a list of aliases to selected items from a list of array references
I don't like thrashing @_ because I'm weird, so how about something like this?
my $aPush = sub { \@_ }; my $av = []; for (my $index = 0;$index < @_; $index += 16) { my $length = $#_ - $index; $av = $aPush->(@$rv, ($_[$index][0],$_[$index+1][0], $_[$index+2][0],$_[$index+3][0],$_[$index+4][0], $_[$index+5][0],$_[$index+6][0],$_[$index+7][0], $_[$index+8][0],$_[$index+9][0],$_[$index+10][0], $_[$index+11][0],$_[$index+12][0],$_[$index+13][0], $_[$index+14][0],$_[$index+15][0] )[ 0..($length < 16 ? $length:15) ] ); }
Update: After benchmarking this against what you have in the previous post, yours is definitely faster.
antirice
The first rule of Perl club is - use Perl
The ith rule of Perl club is - follow rule i - 1 for i > 1
|
|---|