my @suff = 0 .. length $string; pop @suff; @suff = sort { substr($string, $a) cmp substr $string, $b } @suff; for my $idx (@suff) { print substr $string, $idx - 1, 1; } print "\n";