in reply to sort != sort
my @sorted; push(@{$sorted[_$->{'num'}-1]}, $_) foreach @Objs; [download]
my @bucket = (); while($#Notes >= 0) { my $n = shift @Notes; push @{$bucket[$n->{terms}-1]},$n; } #Need 1D array back: while($#bucket >= 0) { my $b = pop @bucket; push @Notes, shift @$b while ($#{$b} >= 0); } [download]