##
my $val= 3;
for my $i ( 1 .. $depth-1 ) {
my $end= $val;
push @$loop, sub {[$_+1..$end]};
$val += 2;
}
####
#!/usr/bin/perl -w
use strict;
use Algorithm::Loops 'NestedLoops';
my $depth= 4;
my $iter= NestedLoops(
[ [0..1],
map {
my $end= 2*$_+1;
sub { [$_+1..$end] }
} 1..$depth-1,
],
);
while( my @list= $iter->() ) {
output(@list);
}
sub output {
print join '', @_, "\n";
}