OK, things have been moving along well in our discussions with
Sarita, but we aren't quite to the point of having a draft for other
people to look at. By Monday morning.
First, I should say that the main part of our model (excluding final
fields) has been largely unchanged since January, and the final field
spec is largely unchanged since April. Although we've made a few
changes in how things are formalized, and worked to explain things
better, the basic concepts are pretty much unchanged.
The only issue we've been working on with Sarita is our definition of
causality. After close examination by and questions from Sarita, we
are clarifying and making more formal several aspects of our
causality specification, including:
* partial execution traces
* what it means for a causal order prefix in one trace to occur in
another trace
and whether that other trace allows some other action to occur.
We should have a new document finished by first thing Monday morning.
Sarita has also been working on refinements to her earlier model. I
don't think there is much serious thought about using Sarita's model
for the official Java memory model. Rather, it is useful to Sarita
and us to try to understand how our model is similar to and differs
from the model Sarita has developed.
One of the main problems we see in Sarita's model is that it
incorporates the concept of the backwards slice of an action (in
other words, the actions that influence a partial action). This is
something we used in our model a year ago, but we abandoned because
we didn't think we could define backward slices or which actions
influence other actions, without talking about causality and
reasoning across multiple execution traces. Once we have causality
defined, we find that we don't really any additional concepts such as
backward slices or actions influencing other actions.
So things are moving, and I want to thank Sarita for the close
reading that is forcing us to refine and clarify our specification.
More soon.
Bill
-------------------------------
JavaMemoryModel mailing list - http://www.cs.umd.edu/~pugh/java/memoryModel
This archive was generated by hypermail 2b29 : Thu Oct 13 2005 - 07:00:46 EDT