>>>>> "A" == =?iso-8859-1?Q?Aleksi Niemel=E4?= <iso-8859-1> writes:

[...]

>> b = a.sort {|x| x[1][0] <=> x[0][0] }

[...]

A> While current way might does the job I have to say it's very ackward to me.
A> Other sorts (Enumerabled) are passed |a,b|. That would have been more
A> natural to me.

pigeon% cat b.rb
#!/usr/bin/ruby
a = {1 => 2, 3 => 4}
b = a.sort {|x, y| y[0] <=> x[0] }
p b
pigeon% b.rb
[[3, 4], [1, 2]]
pigeon% 
 
A> On the case of hashes I might consider even |a_key, a_value, b_key,
A> b_value|.

pigeon% cat b.rb
#!/usr/bin/ruby
a = {1 => 2, 3 => 4}
b = a.sort {|(x1, x2), (y1, y2)| y1 <=> x1 }
p b
pigeon% b.rb
[[3, 4], [1, 2]]
pigeon% 


Guy Decoux