From: Dan Sugalski [mailto:[EMAIL PROTECTED] 
> We are going to do all I/O under the hood asynchronously.
> Completed async IO puts an event in the event queue...

I am new to parrot, but I've had plenty of experience with (non-unix)
I/O systems. Having a totally async core in Parrot is pretty clearly
the right thing. It makes sense for Parrot to expose a clean async
model that hides the ugly details of each platform (like Unix Signals).
Although the implementation may end up hairy on some platforms, Parrot
seems like the correct place to bear this burden.

This makes life simpler for everything built atop Parrot that needs AIO
for files or whatever. And while you can debate how common this need
will be, it seems almost guaranteed that the need will exist and that
people will use it if given a clean system.

But just because Parrot should have AIO and is also forced to support
signals, I don't think it follows that AIO must be built on signals. If
an async core is to be a key aspect of Parrot, it should be built on a
reliable foundation. Personally I don't have enough experience with
Unix signals to make a strong argument here...


-Brad

Reply via email to