C:\test>p1 [0]{0} Perl> use Algorithm::Combinatorics qw[ permutations ];; [0]{0.00943684577941895} Perl> $iter = permutations( [ reverse 1 .. 9 ] );; [0]{0.000318050384521484} Perl> printf "\r%s\t", join '', @$_ while defined( $_ = $iter->next );; 123456789 [0]{22.5874218940735} Perl>