ES6 Tasks and TaskQueues

Mark S. Miller erights at
Tue Mar 4 08:24:45 PST 2014

On Mon, Mar 3, 2014 at 4:57 PM, Allen Wirfs-Brock <allen at>wrote:

> On Mar 3, 2014, at 4:32 PM, Mark S. Miller wrote:
> Is "chore" better than "turn"?
> Mark, to me "turn", as a noun, sounds like a "scheduling slot" rather than
> the thing that gets scheduled into the slot.  For example: "in the next
> turn, we will run the handler for promise p".  The thing that gets enqueue
> is "the task of running the handler for promise p" rather than the "turn in
> which p get handled".
> Now its just a word that we are assigning our own meaning to, so we can
> use "turn" if we want.  But is that equivalence of "turn" and "task" really
> what you're used to, and something whose meaning is intuitive enough?

In a time slicing or real-time system, in which future scheduling slots are
(even approximately) pre-allocated to specific future times, drawing such a
distinction makes sense. But in a run-to-completion event-loop system such
as E and JavaScript, I have never found the need for this distinction, and
I think it would cause more confusion than it would avoid. The future
scheduling slot really has no existence apart from the activity which is
scheduled to take place within this slot.

The <> website, several of my papers[1], and papers by
others[2] make use of the "turn" terminology I'm suggesting. I have gotten
many questions about many issues over the years about this material, but I
have never encountered confusion caused by the choice of the term "turn",
nor by the absence of a distinction between the scheduling slot and the
activity that takes place in this slot. If the authors of some of these
other papers have a contrary experience, please post. Thanks.



> Allen

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the es-discuss mailing list