[E-Lang] Authority -- what is its dual?
Jonathan S. Shapiro
shap@eros-os.org
Sun, 21 Oct 2001 15:27:54 -0400
MarkM and I just got off the phone and a lengthy conversation. I'm writing
to summarize the conclusion.
First, we both agree that immutable things can carry authority. To say that
these things carry no authority is simply not right. The real question here
is not "What are authorities?" but rather "What authorities should be
permitted in the universal environment?"
What we are trying to capture here is the idea of transitive immutability.
This is what we need a term for. MarkM also wants a term for single-level
immutability.
In our conversation, the proposal that came out is:
frozen: the object cannot be modified (by anyone), but
it may contain references to objects that are in turn
mutable.
deep frozen: the object and all objects that it references
(transitively) are immutable.
The proposal here is that all objects in the universal E environment should
be deep frozen.
By the way, in my earlier note where I was discussing authority vs. data, I
was using the term "authority" generically. The distinction I was trying to
bring out about transfer of authority is not particular to capability
systems.
That said, in the context of E you can safely substitute "capability" for
"authority" in my note throughout, and I'll use the term capability from
here forward.
Jonathan