[cap-talk] Petnames versus E-order with ocaps
Karp, Alan H
alan.karp at hp.com
Fri Jan 30 10:56:31 EST 2009
MarkM wrote:
>
> So a petname system built in E would be a 1-to-1 map, implemented by a
> pair of normal maps, between names and settled references. If Bob is
> not sure x is yet settled, then (ignoring for the moment the
> difference between settled and fulfilled), Bob should use a when block
> to guard his logic for looking up/ assigning the reference a pet name
> until it is resolved:
>
> when (x) -> {
> # ... can safely assume x is fulfilled here ...
> # ... so give/retrieve petname and display ...
> } catch ex {
> # ... assume x was broken ...
> }
>
I hadn't realized that Bob gets a promise for Carol that settles only after preceding messages from Alice to Carol have arrived. Your example sounds like a lambda name system in which Bob can choose to use a single name independent of the source of the reference to act as a petname but can retain the underlying lambda name. In a pure petname system, Bob would see one petname for every reference that tests == to this promise. Otherwise we give up the promise pipelining by sending messages to the promise, right? The petname would change when the promise settles to Carol if Bob already had a reference to Carol. Strange but workable, I think.
________________________
Alan Karp
Principal Scientist
Virus Safe Computing Initiative
Hewlett-Packard Laboratories
1501 Page Mill Road
Palo Alto, CA 94304
(650) 857-3967, fax (650) 857-7029
http://www.hpl.hp.com/personal/Alan_Karp
More information about the cap-talk
mailing list