<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2653.12">
<TITLE>[Cross-space references]  NewtonOS and Sessions</TITLE>
</HEAD>
<BODY>
<BR>
<BR>

<P><FONT SIZE=2>&gt; -----Original Message-----</FONT>
<BR><FONT SIZE=2>&gt; From: Jecel Assumpcao Jr [<A HREF="mailto:jecel@merlintec.com">mailto:jecel@merlintec.com</A>]</FONT>
<BR><FONT SIZE=2>&gt; Sent: Tuesday, August 21, 2001 5:20 PM</FONT>
<BR><FONT SIZE=2>&gt; To: squeak-dev@lists.squeakfoundation.org</FONT>
<BR><FONT SIZE=2>&gt; Cc: modsqueak@bluefish.se</FONT>
<BR><FONT SIZE=2>&gt; Subject: Re: [Modules] Components or Modules??</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; On Tuesday 21 August 2001 14:27, Withers, Robert wrote:</FONT>
<BR><FONT SIZE=2>&gt; &gt; Do you have a link to NewtonOS soups?</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; This seems like a great place to start:</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt;&nbsp;&nbsp;&nbsp; <A HREF="http://www.best.com/~wsmith/works.html" TARGET="_blank">http://www.best.com/~wsmith/works.html</A></FONT>
<BR><FONT SIZE=2>&gt;</FONT>
</P>

<P><FONT SIZE=2>Thanks for the link.&nbsp; Soups and Stores with Domain Managers, I see.</FONT>
</P>

<P><FONT SIZE=2>&gt; &gt; I think your concept of Viewpoints is like my UserSpace, no?</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; Actually, your UserSpace would be what I call a &quot;Session&quot;, </FONT>
<BR><FONT SIZE=2>&gt; though there </FONT>
<BR><FONT SIZE=2>&gt; is an overlap between the two ideas. Hmmm... I don't seem to </FONT>
<BR><FONT SIZE=2>&gt; have a web </FONT>
<BR><FONT SIZE=2>&gt; description of that anywhere.</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; But it is very simple - just think of sessions as separate VMs that </FONT>
<BR><FONT SIZE=2>&gt; have some shared memory but mostly communicate using messages. A </FONT>
<BR><FONT SIZE=2>&gt; special &quot;boot session&quot; has direct access to the hardware (or OS) and </FONT>
<BR><FONT SIZE=2>&gt; each logged in person has a separate &quot;user session&quot;.</FONT>
</P>

<P><FONT SIZE=2>This is exactly what I would like to see within one Squeak image.&nbsp; Communication should be normal sends, and the context of the reference should transform that send appropriately.</FONT></P>

<P><FONT SIZE=2>&gt; &gt;&nbsp; It is also the context of an OasisModule, I believe.</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; Very likely.</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; &gt; Cross space references would be an interesting problem, that I have</FONT>
<BR><FONT SIZE=2>&gt; &gt; been toying with for the past year or so&nbsp; (see AddressSpaces in the</FONT>
<BR><FONT SIZE=2>&gt; &gt; outdated, and limited Chatter).&nbsp; I'm getting ready to ask </FONT>
<BR><FONT SIZE=2>&gt; Allen about</FONT>
<BR><FONT SIZE=2>&gt; &gt; this in Firewall..:)</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; I started working on my design in 1984. It isn't simple to get it </FONT>
<BR><FONT SIZE=2>&gt; simple. Lately I have made progress by throwing things out, including </FONT>
<BR><FONT SIZE=2>&gt; cross space references (if you don't count proxies).</FONT>
</P>

<P><FONT SIZE=2>So you used to have a cross-space reference that wasn't a proxy pattern?&nbsp; Or rather it was implemented differently than the standard &quot;subclass from ProtoObject&quot; style proxy?&nbsp; If so, how did you work it?&nbsp; I have a proxy that works, and with the Delegation model, from Stephen, we can preserve identity; however, I want it to be completely transparent, if possible.&nbsp; It would require VM support, I believe.&nbsp; I am clearly violating the 80/20 rule, but I feel that it would open many, many doors.&nbsp; It is a pluggable proxy, with the ability to transform the message send. It should be completely weightless, aside from the oop header and 2 slots, target and messageManager.&nbsp; Perhaps we have a registry of managers, that we lookup using a referenceHandle, to cut an oop from the stack.&nbsp; If we could use a bit in the Oop header, we may be able keep it to 2 words.&nbsp; Thus I am out to learn the vm, and stop talkin' about it so much.&nbsp; :)</FONT></P>

<P><FONT SIZE=2>- Rob</FONT>
</P>

<P><FONT SIZE=2>&gt; -- Jecel</FONT>
<BR><FONT SIZE=2>&gt; </FONT>
<BR><FONT SIZE=2>&gt; </FONT>
</P>

</BODY>
</HTML>