Re: [friam] Classification of actor languages
Tom Van Cutsem <[email protected]> Mon, 16 Feb 2015 21:23:31 +0100
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <CAKDfNj9svxA5dZzxydF4Fuavus7fG8Vw5QXf+T-uiqvDQOAneA@mail.gmail.com> |
--===============0627480597378970461== Content-Type: multipart/alternative; boundary=047d7b33cb8c2250cd050f3a5ce8 --047d7b33cb8c2250cd050f3a5ce8 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Carl, 2015-02-14 1:19 GMT+01:00 Carl Hewitt <[email protected]>: > Of course, an Actor can implement multiple interfaces. > > > > I am wondering how a =E2=80=9Cfacet=E2=80=9D relates to an interface. > Indeed, an actor can implement multiple interfaces, but this typically means that anyone having a reference to the actor can send any message from the union of all interface methods. By contrast, in a vat with multiple facets, a reference to a facet provides access to only the methods exposed by that facet. Thus, facets make it easier to restrict authority. Of course, one could encode facets in a pure actor model, by passing a token designating the facet as part of the message. The actor can be programmed to dispatch the message to an internal object only if the token matches. But this would be an encoding of the vat model in a pure actor model. Cheers, Tom --047d7b33cb8c2250cd050f3a5ce8 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Hi Carl,<br><div class=3D"gmail_extra"><br><div class=3D"g= mail_quote">2015-02-14 1:19 GMT+01:00 Carl Hewitt <span dir=3D"ltr"><<a = href=3D"mailto:[email protected]" target=3D"_blank">[email protected]</a>= ></span>:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8e= x;border-left:1px #ccc solid;padding-left:1ex"> <div lang=3D"EN-US" link=3D"blue" vlink=3D"purple"> <div> <p class=3D"MsoNormal"><span style=3D"color:rgb(31,73,125);font-family:Cali= bri,sans-serif;font-size:11pt">Of course, an Actor can implement multiple i= nterfaces.</span><br></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri",sans-serif;color:#1f497d"><u></u>=C2=A0<u></u></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri",sans-serif;color:#1f497d">I am wondering how a =E2=80=9Cfacet= =E2=80=9D relates to an interface.</span></p></div></div></blockquote><div>= <br></div><div>Indeed, an actor can implement multiple interfaces, but this= typically means that anyone having a reference to the actor can send any m= essage from the union of all interface methods. By contrast, in a vat with = multiple facets, a reference to a facet provides access to only the methods= exposed by that facet. Thus, facets make it easier to restrict authority.<= /div><div><br></div><div>Of course, one could encode facets in a pure actor= model, by passing a token designating the facet as part of the message. Th= e actor can be programmed to dispatch the message to an internal object onl= y if the token matches. But this would be an encoding of the vat model in a= pure actor model.</div><div><br></div><div>Cheers,</div><div>Tom</div></di= v></div></div> --047d7b33cb8c2250cd050f3a5ce8-- --===============0627480597378970461== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ e-lang mailing list [email protected] http://www.eros-os.org/mailman/listinfo/e-lang --===============0627480597378970461==--