Re: [friam] Classification of actor languages
"Mark S. Miller" <[email protected]> Mon, 16 Feb 2015 17:11:53 -0800
| Newsgroups | gmane.comp.lang.e.general |
|---|---|
| Message-ID | <CABHxS9gu2ouaORNAnOB_nTLrJ_vec5kPaNHp94xyjDGXuX-Rag@mail.gmail.com> |
--===============7539508675909716080== Content-Type: multipart/alternative; boundary=90e6ba1efc1267dcff050f3e6309 --90e6ba1efc1267dcff050f3e6309 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable The security of actors that we have previously discussed derives from the locality laws. Do types somehow relate to the locality laws? If not, are we talking about a distinct set of security properties? On Mon, Feb 16, 2015 at 1:44 PM, Carl Hewitt <[email protected]> wrote: > Actors need types in order to be able to securely send messages. > > > > Cheers, > > Carl > > > > *From:* friam-/[email protected] [mailto:friam-/[email protected]] > *Sent:* Monday, February 16, 2015 12:50 > > *To:* friam > *Cc:* Discussion of E and other capability languages > *Subject:* Re: [friam] Classification of actor languages > > > > It is not at all obvious to me what you even mean by these terms. Can you > define them in terms of, for example, the Hewitt-Baker Actor laws, the > Clinger Actor semantics, or something equally foundational? > > > > As for conventional use of these terms, they mean many subtly different > things in different contexts, so it is again not obvious precisely what y= ou > even intend to mean. For example, the main context I would expect to borr= ow > from, Java and C#, you explicitly say do not mean the same thing as you b= y > "interface". > > > > > > > > > > > > On Mon, Feb 16, 2015 at 12:46 PM, Carl Hewitt <[email protected]> wrote: > > Hi Mark, > > > > It is obvious that an Actor needs to be able to implement multiple > interfaces. > > However, it is important to avoid mistakes that were made in Java and C#. > > For example, > > =C2=B7 It must be possible to have the **same** message receiver > signature in > > two different interfaces implemented by the same Actor. > > =C2=B7 It must not be possible **externally** to cast an address fo= r one > interface > > to an address for another interface. > > > > Cheers, > > Carl > > > > *From:* friam-/[email protected] [mailto:friam-/[email protected]] > *Sent:* Monday, February 16, 2015 12:38 > *To:* friam > > > *Cc:* Discussion of E and other capability languages > *Subject:* Re: [friam] Classification of actor languages > > > > Carl, what do you mean by "interface" here? It doesn't sound like any > foundational concept I know of from my long study of Actors. > > > > > > > > On Mon, Feb 16, 2015 at 12:34 PM, Carl Hewitt <[email protected]> wrote: > > Hi Tom, > > > > It should **not** be the case that having an address for > > an interface to an Actor automatically enables sending messages > > to other interfaces of the Actor. The only way to obtain > > addresses for other interfaces is for them to be communicated > > in messages by the Actor. > > > > In this respect, Java and C# are **not** proper Actor programming > languages > > because it is possible to **externally** cast from one interface of an > Actor to another :-( > > > > Cheers, > > Carl > > > > > > *From:* friam-/[email protected] [mailto:friam-/[email protected]] *On Behalf > Of *Tom Van Cutsem > *Sent:* Monday, February 16, 2015 12:24 > *To:* friam-/[email protected] > *Cc:* Discussion of E and other capability languages > *Subject:* Re: [friam] Classification of actor languages > > > > 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 fr= om > 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 expose= d > 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 toke= n > matches. But this would be an encoding of the vat model in a pure actor > model. > > > > Cheers, > > Tom > > -- > You received this message because you are subscribed to the Google Groups > "friam" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to friam+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > To post to this group, send email to friam-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > Visit this group at http://groups.google.com/group/friam. > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "friam" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to friam+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > To post to this group, send email to friam-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > Visit this group at http://groups.google.com/group/friam. > For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > Cheers, > --MarkM > > -- > You received this message because you are subscribed to the Google Groups > "friam" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to friam+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > To post to this group, send email to friam-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > Visit this group at http://groups.google.com/group/friam. > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "friam" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to friam+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > To post to this group, send email to friam-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > Visit this group at http://groups.google.com/group/friam. > For more options, visit https://groups.google.com/d/optout. > > > > > > -- > > Cheers, > --MarkM > > -- > You received this message because you are subscribed to the Google Groups > "friam" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to friam+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > To post to this group, send email to friam-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > Visit this group at http://groups.google.com/group/friam. > For more options, visit https://groups.google.com/d/optout. > > -- > You received this message because you are subscribed to the Google Groups > "friam" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to friam+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > To post to this group, send email to friam-/JYPxA39Uh5TLH3MbocFF+G/[email protected] > Visit this group at http://groups.google.com/group/friam. > For more options, visit https://groups.google.com/d/optout. > --=20 Cheers, --MarkM --90e6ba1efc1267dcff050f3e6309 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">The security of actors that we have previously discussed d= erives from the locality laws. Do types somehow relate to the locality laws= ? If not, are we talking about a distinct set of security properties?<div><= br></div></div><div class=3D"gmail_extra"><br><div class=3D"gmail_quote">On= Mon, Feb 16, 2015 at 1:44 PM, Carl Hewitt <span dir=3D"ltr"><<a href=3D= "mailto:[email protected]" target=3D"_blank">[email protected]</a>></s= pan> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex= ;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"font-size:11.0pt;font-family:"Mi= crosoft Sans Serif",sans-serif;color:black">Actors need types in order= to be able to securely send messages.=C2=A0 <u></u><u></u></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Mi= crosoft Sans Serif",sans-serif;color:black"><u></u>=C2=A0<u></u></span= ></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Mi= crosoft Sans Serif",sans-serif;color:black">Cheers,<u></u><u></u></spa= n></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Mi= crosoft Sans Serif",sans-serif;color:black">Carl<u></u><u></u></span><= /p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Mi= crosoft Sans Serif",sans-serif;color:black"><u></u>=C2=A0<u></u></span= ></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><b><span style=3D"font-si= ze:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span= style=3D"font-size:11.0pt;font-family:"Calibri",sans-serif"> <a = href=3D"mailto:friam-/[email protected]" target=3D"_blank">friam@googlegroups= .com</a> [mailto:<a href=3D"mailto:friam-/[email protected]" target=3D"_blank= ">friam-/[email protected]</a>] <br> <b>Sent:</b> Monday, February 16, 2015 12:50</span></p><div><div class=3D"h= 5"><br> <b>To:</b> friam<br> <b>Cc:</b> Discussion of E and other capability languages<br> <b>Subject:</b> Re: [friam] Classification of actor languages<u></u><u></u>= </div></div><p></p><div><div class=3D"h5"> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><u></u>=C2=A0<u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in">It is not at all obvious = to me what you even mean by these terms. Can you define them in terms of, f= or example, the Hewitt-Baker Actor laws, the Clinger Actor semantics, or so= mething equally foundational?<u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><u></u>=C2=A0<u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in">As for conventional use o= f these terms, they mean many subtly different things in different contexts= , so it is again not obvious precisely what you even intend to mean. For ex= ample, the main context I would expect to borrow from, Java and C#, you explicitly say do not mean the same thing= as you by "interface".<u></u><u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><u></u>=C2=A0<u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><u></u>=C2=A0<u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><u></u>=C2=A0<u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><u></u>=C2=A0<u></u></p> </div> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><u></u>=C2=A0<u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in">On Mon, Feb 16, 2015 at 1= 2:46 PM, Carl Hewitt <<a href=3D"mailto:[email protected]" target=3D"_b= lank">[email protected]</a>> wrote:<u></u><u></u></p> <blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0i= n 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in"> <div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">Hi Mark,</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">It is obvious that an Actor needs to be able to i= mplement multiple interfaces.</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">However, it is important to avoid mistakes that w= ere made in Java and C#.</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">For example,</span><u></u><u></u></p> <p style=3D"margin-left:.5in"><span style=3D"font-size:11.0pt;font-family:S= ymbol;color:black">=C2=B7</span><span style=3D"font-size:7.0pt;color:black"= >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 </span><span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Ser= if",sans-serif;color:black">It must be possible to have the *<b>same</= b>* message receiver signature in </span><u></u><u></u></p> <p style=3D"margin-left:.5in"><span style=3D"font-size:11.0pt;font-family:&= quot;Microsoft Sans Serif",sans-serif;color:black">two different inter= faces implemented by the same Actor.</span><u></u><u></u></p> <p style=3D"margin-left:.5in"><span style=3D"font-size:11.0pt;font-family:S= ymbol;color:black">=C2=B7</span><span style=3D"font-size:7.0pt;color:black"= >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 </span><span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Ser= if",sans-serif;color:black">It must not be possible *<b>externally</b>= * to cast an address for one interface</span><u></u><u></u></p> <p style=3D"margin-left:.5in"><span style=3D"font-size:11.0pt;font-family:&= quot;Microsoft Sans Serif",sans-serif;color:black">to an address for a= nother interface.</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">Cheers,</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">Carl</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:.5in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <b><span style=3D"font-size:11.0pt;font-family:"Calibri",sans-ser= if">From:</span></b><span style=3D"font-size:11.0pt;font-family:"Calib= ri",sans-serif"> <a href=3D"mailto:friam-/[email protected]" target=3D"_blank">friam@googlegro= ups.com</a> [mailto:<a href=3D"mailto:friam-/[email protected]" target=3D"_bl= ank">friam-/[email protected]</a>] <br> <b>Sent:</b> Monday, February 16, 2015 12:38<br> <b>To:</b> friam</span><u></u><u></u></p> <div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><br> <b>Cc:</b> Discussion of E and other capability languages<br> <b>Subject:</b> Re: [friam] Classification of actor languages<u></u><u></u>= </p> </div> </div> <div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> =C2=A0<u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> Carl, what do you mean by "interface" here? It doesn't sound = like any foundational concept I know of from my long study of Actors.<u></u= ><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> =C2=A0<u></u><u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> =C2=A0<u></u><u></u></p> </div> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> =C2=A0<u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> On Mon, Feb 16, 2015 at 12:34 PM, Carl Hewitt <<a href=3D"mailto:hewitt@= irobust.org" target=3D"_blank">[email protected]</a>> wrote:<u></u><u><= /u></p> <blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0i= n 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-= bottom:5.0pt"> <div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">Hi Tom,</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">It should *<b>not</b>* be the case that having an= address for </span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">an interface to an Actor automatically enables se= nding messages</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">to other interfaces of the Actor. The only way to= obtain</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">addresses for other interfaces is for them to be = communicated</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">in messages by the Actor.</span><u></u><u></u></p= > <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">In this respect, Java and C# are *<b>not</b>* pro= per Actor programming languages</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">because it is possible to *<b>externally</b>* cas= t from one interface of an Actor to another :-(</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">Cheers,</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">Carl</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <span style=3D"font-size:11.0pt;font-family:"Microsoft Sans Serif"= ;,sans-serif;color:black">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> <b><span style=3D"font-size:11.0pt;font-family:"Calibri",sans-ser= if">From:</span></b><span style=3D"font-size:11.0pt;font-family:"Calib= ri",sans-serif"> <a href=3D"mailto:friam-/[email protected]" target=3D"_blank">friam@googlegro= ups.com</a> [mailto:<a href=3D"mailto:friam-/[email protected]" target=3D"_bl= ank">friam-/[email protected]</a>] <b>On Behalf Of </b>Tom Van Cutsem<br> <b>Sent:</b> Monday, February 16, 2015 12:24<br> <b>To:</b> <a href=3D"mailto:friam-/[email protected]" target=3D"_blank">fria= [email protected]</a><br> <b>Cc:</b> Discussion of E and other capability languages<br> <b>Subject:</b> Re: [friam] Classification of actor languages</span><u></u>= <u></u></p> <div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> =C2=A0<u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> Hi Carl,<u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> =C2=A0<u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> 2015-02-14 1:19 GMT+01:00 Carl Hewitt <<a href=3D"mailto:hewitt@irobust.= org" target=3D"_blank">[email protected]</a>>:<u></u><u></u></p> <blockquote style=3D"border:none;border-left:solid #cccccc 1.0pt;padding:0i= n 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-= bottom:5.0pt"> <div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> <span style=3D"font-size:11.0pt;font-family:"Calibri",sans-serif;= color:#1f497d">Of course, an Actor can implement multiple interfaces.</span= ><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> <span style=3D"font-size:11.0pt;font-family:"Calibri",sans-serif;= color:#1f497d">=C2=A0</span><u></u><u></u></p> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> <span style=3D"font-size:11.0pt;font-family:"Calibri",sans-serif;= color:#1f497d">I am wondering how a =E2=80=9Cfacet=E2=80=9D relates to an i= nterface.</span><u></u><u></u></p> </div> </div> </blockquote> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> =C2=A0<u></u><u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> Indeed, an actor can implement multiple interfaces, but this typically mean= s 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 eas= ier to restrict authority.<u></u><u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> =C2=A0<u></u><u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> Of course, one could encode facets in a pure actor model, by passing a toke= n 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. B= ut this would be an encoding of the vat model in a pure actor model.<u></u><u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> =C2=A0<u></u><u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> Cheers,<u></u><u></u></p> </div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> Tom<u></u><u></u></p> </div> </div> </div> </div> <p class=3D"MsoNormal" style=3D"margin-left:1.5in"> -- <br> You received this message because you are subscribed to the Google Groups &= quot;friam" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href=3D"mailto:friam+unsubscribe-/[email protected]" target=3D"_blank">fri= am+unsubscribe-/[email protected]</a>.<br> To post to this group, send email to <a href=3D"mailto:[email protected]= om" target=3D"_blank"> friam-/[email protected]</a>.<br> Visit this group at <a href=3D"http://groups.google.com/group/friam" target= =3D"_blank"> http://groups.google.com/group/friam</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" targ= et=3D"_blank"> https://groups.google.com/d/optout</a>.<u></u><u></u></p> </div> </div> </div> </div> <div> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> -- <br> You received this message because you are subscribed to the Google Groups &= quot;friam" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href=3D"mailto:friam+unsubscribe-/[email protected]" target=3D"_blank">fri= am+unsubscribe-/[email protected]</a>.<br> To post to this group, send email to <a href=3D"mailto:[email protected]= om" target=3D"_blank"> friam-/[email protected]</a>.<br> Visit this group at <a href=3D"http://groups.google.com/group/friam" target= =3D"_blank"> http://groups.google.com/group/friam</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" targ= et=3D"_blank"> https://groups.google.com/d/optout</a>.<u></u><u></u></p> </div> </div> </blockquote> </div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> <br> <br clear=3D"all"> <u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> =C2=A0<u></u><u></u></p> </div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> -- <u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> =C2=A0 =C2=A0 Cheers,<br> =C2=A0 =C2=A0 --MarkM<u></u><u></u></p> </div> </div> <p class=3D"MsoNormal" style=3D"margin-left:1.0in"> -- <br> You received this message because you are subscribed to the Google Groups &= quot;friam" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href=3D"mailto:friam+unsubscribe-/[email protected]" target=3D"_blank">fri= am+unsubscribe-/[email protected]</a>.<br> To post to this group, send email to <a href=3D"mailto:[email protected]= om" target=3D"_blank"> friam-/[email protected]</a>.<br> Visit this group at <a href=3D"http://groups.google.com/group/friam" target= =3D"_blank"> http://groups.google.com/group/friam</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" targ= et=3D"_blank"> https://groups.google.com/d/optout</a>.<u></u><u></u></p> </div> </div> </div> </div> <div> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in">-- <br> You received this message because you are subscribed to the Google Groups &= quot;friam" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href=3D"mailto:friam+unsubscribe-/[email protected]" target=3D"_blank">fri= am+unsubscribe-/[email protected]</a>.<br> To post to this group, send email to <a href=3D"mailto:[email protected]= om" target=3D"_blank"> friam-/[email protected]</a>.<br> Visit this group at <a href=3D"http://groups.google.com/group/friam" target= =3D"_blank"> http://groups.google.com/group/friam</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" targ= et=3D"_blank"> https://groups.google.com/d/optout</a>.<u></u><u></u></p> </div> </div> </blockquote> </div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><br> <br clear=3D"all"> <u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in"><u></u>=C2=A0<u></u></p> </div> <p class=3D"MsoNormal" style=3D"margin-left:.5in">-- <u></u><u></u></p> <div> <p class=3D"MsoNormal" style=3D"margin-left:.5in">=C2=A0 =C2=A0 Cheers,<br> =C2=A0 =C2=A0 --MarkM<u></u><u></u></p> </div> </div> <p class=3D"MsoNormal" style=3D"margin-left:.5in">-- <br> You received this message because you are subscribed to the Google Groups &= quot;friam" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href=3D"mailto:friam+unsubscribe-/[email protected]" target=3D"_blank">fri= am+unsubscribe-/[email protected]</a>.<br> To post to this group, send email to <a href=3D"mailto:[email protected]= om" target=3D"_blank">friam-/[email protected]</a>.<br> Visit this group at <a href=3D"http://groups.google.com/group/friam" target= =3D"_blank">http://groups.google.com/group/friam</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" targ= et=3D"_blank">https://groups.google.com/d/optout</a>.<u></u><u></u></p> </div></div></div> </div><div class=3D"HOEnZb"><div class=3D"h5"> <p></p> -- <br> You received this message because you are subscribed to the Google Groups &= quot;friam" group.<br> To unsubscribe from this group and stop receiving emails from it, send an e= mail to <a href=3D"mailto:friam+unsubscribe-/[email protected]" target=3D"_bl= ank">friam+unsubscribe-/[email protected]</a>.<br> To post to this group, send email to <a href=3D"mailto:[email protected]= om" target=3D"_blank">friam-/[email protected]</a>.<br> Visit this group at <a href=3D"http://groups.google.com/group/friam" target= =3D"_blank">http://groups.google.com/group/friam</a>.<br> For more options, visit <a href=3D"https://groups.google.com/d/optout" targ= et=3D"_blank">https://groups.google.com/d/optout</a>.<br> </div></div></blockquote></div><br><br clear=3D"all"><div><br></div>-- <br>= <div class=3D"gmail_signature">=C2=A0 =C2=A0 Cheers,<br>=C2=A0 =C2=A0 --Mar= kM</div> </div> --90e6ba1efc1267dcff050f3e6309-- --===============7539508675909716080== 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 --===============7539508675909716080==--