On 31 July 2013 16:59, Bennie Kloosteman <[email protected]> wrote: > There seem to be 4 common models of parralelism people are using > > 3) Fully async node js style with call backs
Which is really about 5 different methods falling into two distinct classes. Callbacks, together with their more disciplined friends deffereds and actors form the group with top-level context switch points. Most such models expect the current message to complete before the next event is handled, that is, deffereds only fire when there is no other thread that hasn't yet completed. Unfortunately, many javascript promise implementations get that wrong. The other class are the libgevent/stackless coroutine or greenlet style, where any function you call may yield or block. It's far more difficult to audit, and more difficult to make compiler optimisations in. Thankfully, most implementations use one-shot continuations. Although I have a preference, there is probably a need to be /able/ to implement each of these efficiently in an up-and-coming systems language, because eventually somebody will write an interpreter for a language using these techniques in it. -- William Leslie Notice: Likely much of this email is, by the nature of copyright, covered under copyright law. You absolutely may reproduce any part of it in accordance with the copyright law of the nation you are reading this in. Any attempt to deny you those rights would be illegal without prior contractual agreement. _______________________________________________ bitc-dev mailing list [email protected] http://www.coyotos.org/mailman/listinfo/bitc-dev
