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