I'm not really sure what the point of this post is. As soon as you introduce asynchronous queueing of operation descriptors and completions the analogy to Actors is present. IO completion ports are not a new concept in operating systems, nor is inter-process messaging. Hell classic MacOS has async IO command objects, with an API to queue them, most likely you're going to put them in a queue when you get the completion callback too.