(Squat mailing list details at http://netjam.org/squat )
Hi--
In my last update, I mentioned that I had installed a minimal version of Flow into a small (600k) snapshot. I am now communicating with that snapshot from a normal one, via sockets. I have also implemented a minimal remote message-sending facility (AKA an "ORB"), so that I can send messages from the normal system to the small one via proxies, with complete transparency. (I didn't use one of the extant ORBs for various technical reasons, see postscript below.)
I'm using the remote-sending facility to direct the further shrinking of the small snapshot from the normal one. This way, it's very straightforward to shut down the human interface, for example. I'll probably do some final cleanup with the simulator (I've added support for making snapshots, along with a few other utilities; among other things, I've made a small snapshot with the GUI ripped out via simulation). I also plan to use remote-sending to build up snapshots from the minimal one.
thanks,
-C
p.s.
None of the Squeak ORBs I looked at (Diego Gomez Deck's rST, Xu Wang's S2S, John Fabry's RMP, Peter Smet's FlyByWire, Masashi Umezawa's SOAPOpera, Lex Spoon's RemoteObject framework) were quite the right thing for what I'm doing. Generally, they didn't provide complete forwarding coverage. What I've done forwards absolutely everything, even messages normally handled by the virtual machine, or resolved in the method cache (the proxy class I've made won't even compile messages sent to self in instance methods :). I don't use >>doesNotUnderstand: (in fact, that would get forwarded :), and the proxy class can be inserted anywhere in the class hierarchy. It's also decently fast, and simple.
-- Craig Latta http://netjam.org/resume craig@netjam.org
spoon@lists.squeakfoundation.org