@mashingan I think what I'm currently working on (an 'actor' system) would be an 'alternative' to 'reactor'. So building on top of reactor makes little sense for me. Reactor says 'code looks very similar to a code written in a blocking style'. That's kind of the opposite of what I want (no use of "await" anywhere). Also, 'reactor' is the name I wanted to use (because my actors are "passive"; they mostly "react" to messages, therefore 'reactor' seems like the perfect name for it), and so far all other names I thought of aren't as good a match for what I'm working on.
@yglukhov Unless otherwise informed, I always read "async" as "runs in some other thread". And since the easiest way to do this is just to queue the tasks in a thread-pool, that is also what I assumed so far. Apparently, I was wrong. This changes everything; I'll have a second look at AsyncDispatch. EDIT: The "second look" was rather short... "as long as you only care about non-Windows platforms" basically mean asyncnet (networking over AsyncDispatch) is useless for me. I'll also note that I'm currently assuming my code will be CPU-bound, so I'm more worried about threads being created in the background, outside of my own code, than worried about "ultimate IO efficiency".
