Mark S. Miller (2014-03-04T16:24:45.000Z)
On Mon, Mar 3, 2014 at 4:57 PM, Allen Wirfs-Brock <allen at wirfs-brock.com>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 <http://erights.org> 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.

[1] http://research.google.com/pubs/pub40673.html
http://research.google.com/pubs/pub35127.html
http://erights.org/talks/promises/paper/tgc05.pdf
http://erights.org/talks/thesis/markm-thesis.pdf

[2] http://soft.vub.ac.be/Publications/2013/vub-soft-tr-13-05.pdf
http://www.hpl.hp.com/techreports/2010/HPL-2010-155.html
http://scholarworks.sjsu.edu/cgi/viewcontent.cgi?article=1230&context=etd_projects
https://www.usenix.org/conference/atc12/technical-sessions/presentation/yoo
http://soft.vub.ac.be/~tvcutsem/invokedynamic/presentations/T37_nobackground.pdf
https://code.google.com/p/ambienttalk/wiki/EssenceOfAmbientTalk






>
> Allen
>
>
>


-- 
    Cheers,
    --MarkM
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20140304/ecacecbf/attachment-0001.html>
domenic at domenicdenicola.com (2014-03-11T14:58:02.088Z)
On Mon, Mar 3, 2014 at 4:57 PM, Allen Wirfs-Brock <allen at wirfs-brock.com>wrote:

> 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 http://erights.org 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.

[1] http://research.google.com/pubs/pub40673.html
http://research.google.com/pubs/pub35127.html
http://erights.org/talks/promises/paper/tgc05.pdf
http://erights.org/talks/thesis/markm-thesis.pdf

[2] http://soft.vub.ac.be/Publications/2013/vub-soft-tr-13-05.pdf
http://www.hpl.hp.com/techreports/2010/HPL-2010-155.html
http://scholarworks.sjsu.edu/cgi/viewcontent.cgi?article=1230&context=etd_projects
https://www.usenix.org/conference/atc12/technical-sessions/presentation/yoo
http://soft.vub.ac.be/~tvcutsem/invokedynamic/presentations/T37_nobackground.pdf
https://code.google.com/p/ambienttalk/wiki/EssenceOfAmbientTalk