On Wed, Dec 11, 2002 at 08:44:00PM -0500, Jeff 'japhy' Pinyan wrote: > On Dec 11, Paul Johnson said: > > >On Wed, Dec 11, 2002 at 10:52:53PM +0100, Jenda Krynicky wrote: > > > >> From: Rob Richardson <[EMAIL PROTECTED]> > >> > > >> > > @website[ > >> > > map $_->[0], > >> > > sort { $b->[1] <=> $a->[1] } > >> > > map [ $_, $array[$_] ], > >> > > 0 .. $#array > >> > > ] = 1 .. @array; > >> > >> This is something most Perl programmers would have a hard time > >> understanding. The construct comes from functional languages. > > > >OK. I admit it. I like functional programming :-) > > No one has noted yet that the Schwartzian transform here is TOTALLY > redundant. > > @website[ > sort { $array[$b] <=> $array[$a] } 0 .. $#array > ] = 1 ..@array;
But sometimes redundancy is important in critical systems. Of course if you are worried about a few little cycles, or the elegance or maintainability of your algorithm, Jeff's version is fine too. It's funny, when I was first writing that I thought there wasn't much going into the array references, but I didn't pursue it. [Checks time of posting] Ah, that's why. (Yeah, I know that's no excuse.) Thanks, Jeff, for catching that. But think of all the fun we would have missed. [ Please insert smilies as required by law. ] -- Paul Johnson - [EMAIL PROTECTED] http://www.pjcj.net -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]