[E-Lang] Hash Chaining & Capabilities, Proposal #2c:
On-line RemoteEvaluation
Mark S. Miller
markm@caplet.com
Wed, 08 Nov 2000 18:55:41 -0800
At 02:43 AM 10/26/00, Tyler Close wrote:
>Markm wrote:
>> If passing a local PassByProxy object is an "over here", as in, the
>passed
>> object remains with the sender and the receiver gets a remote
>pointer,
>>
>> and passing a PassByCopy object is an "over here and over there", in
>that
>> the object is local to both sides,
>>
>> remote evaluation is "other there", in that the sender gets the
>remote pointer.
>>
>>
>> We may well be able to layer the mobile code aspect of PassByCopy on
>top of
>> remote evaluation.
>
>If I have a reference to an object in a foreign Vat, and I send it a
>PassByCopy for it to keep as part of its state, then I have
>accomplished the "over there" scenario. Does the Evaluator do more
>than provide a standard interface for the object in the foreign Vat?
This is a great question. The Evaluator also provides another standard
interface for loading code into a foreign vat and evaluating it there -- in
addition to the interface implicitly provided by the PassByCopy declaration.
In thinking about your question, I don't think there's anything I can do
with the Evaluator that I can't somehow arrange to do with PassByCopy
objects. So it seems the Evaluator isn't fundamental. Nevertheless, it is
a packaging of remote evaluation that is much more convenient for some
patterns, as we'll soon see.
Cheers,
--MarkM