ERights Home elib / distrib 
Back to: Promise Pipelining x On to: Data Pluribus

Types of
Object Passing


PassByProxy

The default case -- an E object that doesn't state otherwise is PassByProxy. (However, a Java object using ELib is by default not remotely passable.) PassByProxy objects are shown as circles in our extended Granovetter notation. When passed between vats, the remote vat receives a remote reference to the original object.

PassByConstruction

When a PassByConstruction object is passed between vats, it causes an object to be constructed in the remote vat as its remote presence. PassByConstruction objects are shown as rectangles in our extended Granovetter notation.

These presences taken together are the PassByConstruction object as a whole, and the original object is simply the originating presence. A reference to a PassByConstruction object is always eventually a NEAR reference to such a local presence of the object. An available object is a PassByConstruction object whose presences can continue to give meaningful (if degraded) service when out of contact with other presences (including the originating presence).

PassByCopy

This is the simplest form of PassByConstruction, specified by simply declaring the object to be PassByCopy. When passed, the object's contents are simply serialized at the sending end and unserialized at the receiving end. Each presence is an identical copy of all the others, and the presences operate autonomously of the other presences.

To be PassByCopy, an object must be immutable, selfless (use value-based equality, rather than having its own creation identity), and transparent (not encapsulate any of its state). Beyond these restrictions, the only additional semantics of declaring an object PassByCopy are that references to such an object is always eventually NEAR, and therefore at least its surface level use (fetching its state) is available. *** redundant?

Partitionable Reservoirs

CryptoBrandMakers

To be written. In the meantime, see e-lang email messages
Identity et al (was Re: [E-Lang] Authority -- what is its dual?)
,
A stab at the sealer in E,
and A stab at the sealer in E.

Una

To be written. In the meantime, see e-lang email messages
Migration and Una (was: E FAQ)

and "Objects as Capabilities in Squeak".

Lamport Slots

 
Unless stated otherwise, all text on this page which is either unattributed or by Mark S. Miller is hereby placed in the public domain.
ERights Home elib / distrib 
Back to: Promise Pipelining x On to: Data Pluribus
Download    FAQ    API    Mail Archive    Donate

report bug (including invalid html)

Golden Key Campaign Blue Ribbon Campaign