in reply to List into two-dimensional array

In the spirit of TIMTOWTDI:
my @AoA; for (0 .. $#list) { push @AoA, [] if $_ % $C == 0; push @{ $AoA[-1] }, $list[$_]; }

or, without using indices:

my @AoA = []; for (@list) { push @AoA, [] if $C == @{ $AoA[-1] }; push @{ $AoA[-1] }, $_; }
map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]