Malte Milatz wrote:
> That's something I encounter often, too. It' especially tiresome when
> trying to figure out how undocumented methods work - or when I've
> forgotten in which order arguments have to be given (example:
> alias_method). Though extensive use of hashes as parameters would be
> terribly verbose, it would be very easy to read, because it's easier to
> know what is happening - provided that the keys used have got sensible
> names.

That happens to me too.  That's why I hope that with Ruby 2, Matz makes 
it so that every method's parameters are named by default so for:

def send_data(data, to)
   # ...
end

you could call it as:

send_data(the_data, "bob")

or

send_data(to: "bob", data: the_data)

This would be especially useful when the function parameters are not 
obviously named:

send_data(to: ARGV[1], data: ARGV[3])

If you know the method well and know the order of parameters well, you 
could just use them in order.  If you want to be explicit about them, 
you can use the keyword params.

I think this would be the most useful implementation, but I'm not sure 
how easy it is.

Ben