<!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>> -----Original Message-----</FONT>
<BR><FONT SIZE=2>> From: Jecel Assumpcao Jr [<A HREF="mailto:jecel@merlintec.com">mailto:jecel@merlintec.com</A>]</FONT>
<BR><FONT SIZE=2>> Sent: Tuesday, August 21, 2001 5:20 PM</FONT>
<BR><FONT SIZE=2>> To: squeak-dev@lists.squeakfoundation.org</FONT>
<BR><FONT SIZE=2>> Cc: modsqueak@bluefish.se</FONT>
<BR><FONT SIZE=2>> Subject: Re: [Modules] Components or Modules??</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> On Tuesday 21 August 2001 14:27, Withers, Robert wrote:</FONT>
<BR><FONT SIZE=2>> > Do you have a link to NewtonOS soups?</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> This seems like a great place to start:</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> <A HREF="http://www.best.com/~wsmith/works.html" TARGET="_blank">http://www.best.com/~wsmith/works.html</A></FONT>
<BR><FONT SIZE=2>></FONT>
</P>
<P><FONT SIZE=2>Thanks for the link. Soups and Stores with Domain Managers, I see.</FONT>
</P>
<P><FONT SIZE=2>> > I think your concept of Viewpoints is like my UserSpace, no?</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Actually, your UserSpace would be what I call a "Session", </FONT>
<BR><FONT SIZE=2>> though there </FONT>
<BR><FONT SIZE=2>> is an overlap between the two ideas. Hmmm... I don't seem to </FONT>
<BR><FONT SIZE=2>> have a web </FONT>
<BR><FONT SIZE=2>> description of that anywhere.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> But it is very simple - just think of sessions as separate VMs that </FONT>
<BR><FONT SIZE=2>> have some shared memory but mostly communicate using messages. A </FONT>
<BR><FONT SIZE=2>> special "boot session" has direct access to the hardware (or OS) and </FONT>
<BR><FONT SIZE=2>> each logged in person has a separate "user session".</FONT>
</P>
<P><FONT SIZE=2>This is exactly what I would like to see within one Squeak image. Communication should be normal sends, and the context of the reference should transform that send appropriately.</FONT></P>
<P><FONT SIZE=2>> > It is also the context of an OasisModule, I believe.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> Very likely.</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> > Cross space references would be an interesting problem, that I have</FONT>
<BR><FONT SIZE=2>> > been toying with for the past year or so (see AddressSpaces in the</FONT>
<BR><FONT SIZE=2>> > outdated, and limited Chatter). I'm getting ready to ask </FONT>
<BR><FONT SIZE=2>> Allen about</FONT>
<BR><FONT SIZE=2>> > this in Firewall..:)</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> I started working on my design in 1984. It isn't simple to get it </FONT>
<BR><FONT SIZE=2>> simple. Lately I have made progress by throwing things out, including </FONT>
<BR><FONT SIZE=2>> 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? Or rather it was implemented differently than the standard "subclass from ProtoObject" style proxy? If so, how did you work it? 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. It would require VM support, I believe. I am clearly violating the 80/20 rule, but I feel that it would open many, many doors. 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. Perhaps we have a registry of managers, that we lookup using a referenceHandle, to cut an oop from the stack. If we could use a bit in the Oop header, we may be able keep it to 2 words. Thus I am out to learn the vm, and stop talkin' about it so much. :)</FONT></P>
<P><FONT SIZE=2>- Rob</FONT>
</P>
<P><FONT SIZE=2>> -- Jecel</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> </FONT>
</P>
</BODY>
</HTML>