Yukihiro Matsumoto wrote:
||> to_a was too general.  All enumerable objects (and even more) have
||> to_a method.

Mathieu Bouchard <matju / artengine.ca> responded:
||If I put a star in front of an expression in an argument-list, what else
||can it say than "splat me" and why should you feel a duty to prevent it?
|
|I don't think I prevent anything.  I just allowed objects to respond
|the order "splat me" in its own manner.  I considered it adding
|flexibility.  You can ignore it for most of the cases.  Only few
|people who create a new array-like object need to care.

Matz, I don't understand why "to_a was too general." What's wrong with
splatting based on to_a? I see an analogy with block-calling (&) with
to_proc.

Are you saying this shouldn't work (with hashes or other enumerables)?

    x, y = *{1 => 2, 3 => 4}  #=> [[1, 2], [3, 4]]

Or would Enumerable's to_splat do the same as to_a; in which case, what
is the usefulness of the added flexibility?

Cheers,
Dave