[cap-talk] where(), and a mobile-code JS-over-Python experiment
Bill Frantz
frantz at pwpconsult.com
Fri Apr 9 19:34:54 PDT 2010
On 4/9/10 at 10:33 AM, tomvc at google.com (Tom Van Cutsem) wrote:
> Purely coincindentally, MarkM and I discussed an alternative semantics of
> 'where' for Javascript yesterday. In a nutshell:
>
> var promise = try (x = <exp1>, y = <exp2>, ...) in ( farCompute ) {
> ... x ... y ...
> => <exp3>
> }
>
> Here, 'farCompute' is supposedly a far reference to some other vat's
> "compute" function. "compute" is somewhat like "eval", but takes both a
> source string and an environment record as arguments, allowing the source
> code to refer to bindings in the environment record.
>
>...
>
> The way in which this statement differs from the earlier 'where' statement
> is that one cannot ship code to arbitrary vats for which one has a far
> reference to one of its objects. In principle, one can only execute code in
> those vats for which one is given a reference to that vat's compute
> function.
This formulation makes executing code on a remote vat dependent on
holding a specific capability to that vat, and not an ambient authority
conveyed by holding a remote reference. I like it.
Cheers - Bill
-------------------------------------------------------------------------
Bill Frantz | Airline peanut bag: "Produced | Periwinkle
(408)356-8506 | in a facility that processes | 16345 Englewood Ave
www.pwpconsult.com | peanuts and other nuts." - Duh | Los Gatos, CA 95032
More information about the cap-talk
mailing list