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>
####
[0]{0} Perl>@d = permutations( [ reverse 1 .. 9 ] );;
[0]{2.31235218048096} Perl>
[0]{0} Perl> printf "\r%s\t", join '', @$_ for @d;;
123456789
[0]{18.9919490814209} Perl>
####
[0]{0} Perl> $"=''; $_ = "@$_" for @d;;
[0]{1.93835282325745} Perl>
####
[0]{} Perl> $d = join "\r", @d;;
[0]{0.0442740917205811} Perl> print $d;;
123456789
[0]{4.72821307182312} Perl>
####
[0]{0} Perl> $"=''; @d = permutations( [ reverse 1 .. 9 ] ); $_ = "@$_" for @d; $d = join "\r", @d; print $d;;
123456789
[0]{9.26112604141235} Perl>
####
[0]{0} Perl> $"=''; print join "\r", map "@$_", permutations( [ reverse 1 .. 9 ] );;
123456789
[0]{10.0599029064178} Perl>
[0]{0} Perl> $"=''; print join "\r", map "@$_", permutations( [ reverse 1 .. 9 ] );;
123456789
[0]{10.086268901825} Perl>