I believe ActiveState's Trent Mick has released something along these lines. Does your proposed API match theirs?
No, not at all. There are some issues with this module, both regards the
API and the implementation, which I'm not happy with. I tried to establish
a discussion with Trent about this, but if I remember correctly, I never
recieved a response.
Here's some things which I'm not happy with:
* There are three different "factory" classes: Process, ProcessOpen,
ProcessProxy. I have only one, covering all cases. I think three different
classes are confusing to users. Even I have trouble understanding the
difference between them.
* The code size is very large. The code is complex.
* Trent's module always executes things through the shell, and deals with
every ugly cornercase that comes from this.
* The modules uses destructors, which I'm usually avoiding.
So, the chances of getting our modules API-compatible are very small.
/Peter Åstrand