Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re^2: sort +*, @array

by raiph (Hermit)
on Dec 09, 2013 at 12:32 UTC ( #1066280=note: print w/ replies, xml ) Need Help??

in reply to Re: sort +*, @array
in thread sort +*, @array

Sorts numerically. (The default is to sort stringwise).

Comment on Re^2: sort +*, @array
Replies are listed 'Best First'.
Re^3: sort +*, @array
by hdb (Prior) on Dec 09, 2013 at 12:39 UTC

    Thanks for your reply.

    So it is the Perl 6 equivalent to say sort {$a <=> $b} @array;?

    But how is that statement related to the Schwartzian transformation?

      The +* is a "key extractor" closure. This closure corresponds to the before map of the ST. Of course, in the specific case of +*, it's trivial to instead just specify a "comparator" closure using <=>, but what if one instead writes:

      say sort +*.value, 1=>4, 11=>5, 2=>99, 22=>22, 3=>339 # prints 1=>4 11=>5 22=>22 2=>99 3=>339 say sort ~*.value, 1=>4, 11=>5, 2=>99, 22=>22, 3=>339 # prints 22=>22 3=>339 1=>4 11=>5 2=>99

      (And of course the results of the closure call on a given item is memoized.)

        Thanks for the explanation. So the link to the Schwartzian really is the fact that the items are automatically memoized.

Re^3: sort +*, @array
by moritz (Cardinal) on Dec 11, 2013 at 12:27 UTC

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1066280]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (3)
As of 2015-10-05 04:20 GMT
Find Nodes?
    Voting Booth?

    Does Humor Belong in Programming?

    Results (107 votes), past polls