On Sat, Oct 20, 2012 at 4:41 PM, Greg Ewing email@example.com wrote:
The point is that, with a completion-based model, you need a function or method for every possible system call that you might want to perform asynchronously.
TBH, I like APIs that wrap all system calls. System calls have too many low-level details that you have to be aware of, and they too often vary per platform. (I just wrote a simple event loop plus scheduler along the lines of your essay, extending it to the point where I could do basic, fully-async, HTTP exchanges. The number of details I had to take care of was excruciating; and then there were the subtle differences between OSX and Ubuntu.)