in reply to Syntactically cool list of lists

I dislike the splice solution because it destroys the source array unless you copy it first. I have a utility routine called mapn which lends itself to this task amongst others:

use Data::Dumper; $data::Dumper::Terse=1; $Data::Dumper::Indent=0; sub mapn (&@) { my( $c, $n, $s ) = ( shift, shift, 0 ); map{ $s += $n; $c->( @_[ ( $s - $n ) .. ( $s < @_ ? $s - 1 : @_ - 1 ) ] ); } 0 .. ( $#_ / $n ); } my @a = (1,5,7,9,32,197,8,4,5); for my $n ( 2 .. 7 ) { my $LoL = [ mapn{ [ @_ ] } $n, @a ]; print "n=$n ", Dumper $LoL; } __END__ n=2 $VAR1 = [[1,5],[7,9],[32,197],[8,4],[5]]; n=3 $VAR1 = [[1,5,7],[9,32,197],[8,4,5]]; n=4 $VAR1 = [[1,5,7,9],[32,197,8,4],[5]]; n=5 $VAR1 = [[1,5,7,9,32],[197,8,4,5]]; n=6 $VAR1 = [[1,5,7,9,32,197],[8,4,5]]; n=7 $VAR1 = [[1,5,7,9,32,197,8],[4,5]];

Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.