[e-lang] Reference-state diagram
markm at cs.jhu.edu
Thu Jun 30 02:25:51 EDT 2005
Ka-Ping Yee wrote:
> I'm puzzled by the arrow from the remote promise to the broken
> reference in the figure. [...]
> What do you think of this?
> unresolved resolved
> .------------. .------------.
> | | | near |
> | | | |
> | local | | |
> | ^ |------>| |
> | | | | |
> | v | | |
> | remote | | far |
> '------------' | | |
> | v |
> | broken |
> I find this logic easier to follow, and i think it represents
> all the same transitions. [...]
Your diagram above is much closer to the way I had been drawing it: See the
diagram at the bottom of <http://www.erights.org/elib/concurrency/refmech.html>.
I changed it for this paper to emphasize the two causes of these state
transitions (resolution vs partition), rather than simply what can turn into
what. The loopy arrow represents all transitions caused by resolution. The
arrow-with-two-tails represents all the transitions caused by partition.
Either can cause a remote promise to become a broken reference, but only
partition will cause a __reactToLostClient message to be sent.
Text by me above is hereby placed in the public domain
More information about the e-lang