Jacob Fugal
6/28/2005 6:36:00 PM
On 6/28/05, C Erler <erlercw@gmail.com> wrote:
> IO has such methods as #closed? and #eof? to find much-needed information
> about IO status, but it doesn't have anything like #read_ready? or
> #write_ready? that would be useful for anyone not wanting blocking IO. The
> only way to do this is with the C-like ugly-hackishness that is
> Kernel#select.
>
> Does anyone have a good argument for not adding a few more methods to IO
> in the Ruby distribution itself ?
Not me.
> Does anybody think it would be a good idea to submit this as an RCR ?
Go ahead. After submitting it, announce the RCR in ruby-core as well
and let the vote decide. Myself, I'm for adding a few convenience
methods as a wrapper to specific select calls.
> If those are added, would we be able to remove Kernel#select in the next
> "we don't care about backward compatibility" Ruby version ?
I wouldn't go that far. As I said above, I would probably implement
the convenience methods as wrappers to select, unless performance
issues were to require a lower level implementation. And leaving
access to the unwrapped select would be nearly essential to many
useful libraries.
Jacob Fugal