Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

RE: Dynamic sort algorithm selection

by dchetlin (Friar)
on Nov 15, 2000 at 05:53 UTC ( [id://41698] : note . print w/replies, xml ) Need Help??


in reply to Dynamic sort algorithm selection

That should work just fine as you have it (and has worked that way as far back as 5.004, at least). You can have the name of the subroutine in the scalar passed to sort.

Not only that, but you can go one better. You can pass sort a reference to a subroutine. This is safer and cleaner and faster than using the name of the sub.

my $sortref = \&firstname_descending; my @order = sort $sortref keys %data;

For best results, combine this approach with a dispatch table that does your subroutine lookup.

-dlc