in reply to How do I create a sort sub on-the-fly?
Anyway, the code below creates some simple sorting routines at runtime....
#!/usr/bin/perl -wT use strict; my @arr = (6..10,1..5); my $asc = sortmaker(1); my $desc = sortmaker(0); my @asc = sort $asc @arr; my @desc = sort $desc @arr; print "Original: @arr\n"; print "Ascending: @asc\n"; print "Descending: @desc\n"; sub sortmaker { my $order = shift; my $clause = $order ? '$a <=> $b' : '$b <=> $a'; eval "sub { $clause }"; } =OUTPUT Original: 6 7 8 9 10 1 2 3 4 5 Ascending: 1 2 3 4 5 6 7 8 9 10 Descending: 10 9 8 7 6 5 4 3 2 1
-Blake
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Re: How do I create a sort sub on-the-fly?
by mirod (Canon) on Nov 02, 2001 at 15:17 UTC | |
by tilly (Archbishop) on Nov 02, 2001 at 18:41 UTC | |
by CharlesClarkson (Curate) on Nov 06, 2001 at 11:12 UTC |