On 10/31/05, Trans <transfire / gmail.com> wrote:
>
> This whole discussion is silly. If you really think this is "longer" or
> "less readable"
>
>   ObjectSpace.select(Class) { |c| c.name =~ /^S/ }
>
> Than this:
>
>   ObjectSpace.enum_for(:each_object, Class).select { |c| c.name =~ /^S/
> }
>
> Then by all means, type away.

But you are cheating here by leaving out the "setup code" that allows
you to call ObjectSpace.select. I would be curious to see other
examples where you use EnumerableArgs, because as Robert says there
aren't many "each" methods that take a parameter. Using ri on my 1.8.2
install, I could only find String#each and IO#each, both of which take
an optional "separator" parameter. I personally don't see many cases
where I would need to override the default, especially when calling
Enumerable methods. Plus since both already include Enumerable, I'm
not sure what kinds of wacky things would happen if you mixed in
EnumerableArgs as well.

Ryan