On Sat, May 28, 2011 at 10:18 AM, Craig Latta
<craig@netjam.org> wrote:
Hi Mariano--
> What do you exactly mean by support for proxies?
That's support for a special class, "Other". Each Other corresponds
to an object in another object memory, with a network stream connected
to that memory and an object ID. When a message is sent to an Other, the
VM turns it into a remote message to the original object, using a
mechanism similar to the creation of the doesNotUnderstand: message, in
the method lookup logic.
Ok. I understand. Do you do something in #lookupMethodInClass: that checks that the current class is Other. To do that you use objectMemory splObj: OtherClass
and you put Other in the special object array ?
Then if that's true, you fetch the instVar for network stream + ID (you assume the instVars offsets), and you forward the message to the original object?
There are also a few other changes to ensure that all other
messages sent to Others are forwarded ("class", etc.). You had asked
about some of these when you were thinking about proxies,
yep, I remember :)
and I
mentioned my stuff at the time.
uhhhh I don't remember :(
I will check.
Thanks Craig!