Calling Enumerator#to_a many times can become a bit ugly in a code base. I propose these changes to Enumerator to allow implicit Array use of all Enumerators.
Maybe things have changed since Ruby 1.9.2 on this issue? I've been reading through the other issue thread and I'm not sure it would be a bad thing. Most of the methods from Array are already defined and it would save a lot of to_a calls from being written. It would make the following methods available on Enumerators.
Other than syntactic cleanliness and possible public opinion, unfortunately no I don't have a compelling reason why things would have changed.
I think what I'd really like is to not have to call to_a on Enumerators for anything actionable (any verbs). I think you're right it may be a bad idea as many systems may have issue with this.
I suppose I could write my own custom class EnumArraytors ;-). It's probably best practice to create new classes rather than change how the language itself fundamentally works. Or I could use a Refinement to do this in my own projects whenever I want to clean the code base up.
Thanks for at least giving me an opportunity to defend the idea. It was worth considering the options available.
UPDATE: I just learned how to write my own Enumerator::Lazy implementation. This was actually what I was looking for to allow duplicate method implementation for Feature #11815 . This solves the issue of why I opened this feature suggestion in the first place.