WRT clean closures, check what I did in Cuis to serialize
SortedCollections. See implementors and senders of #isClean.
Nice. Thanks Juan. I was checking your code, and that's exactly why I asked Eliot. In your method you say:
isClean "A clean closure is one that doesn't really need the home context because: - It doesn't send messages to self or super - It doesn't access any instance variable - It doesn't access any outer temp - It doesn't do ^ return" .....
So... my question is, WHAT do I need to serialize if I want to be able to serialize also "non clean". I mean, for each item on that list, what do I need apart from the closure instance and the receiver and method from the outerContext ? the whole stack of contexts ?
I think it is needed to know why you need to serialize a non-clean closure. If it is just to be able to evaluate it,
well, some people may just need that, but there are cases where I need it completely. I mean, I need to serialize the whole possible graph of objects. This is an example for what I am doing in my PhD. We are also experiment with remote messages and things like that and sometimes we pass a whole stack. In that case I thin it also make sense. But again, these are particular cases. I agree that most of the times the closure will be "clean"
maybe you don't need the stack at all. My trick could be augmented by serializing any referenced objects, but not the stack.
Yes, maybe I was not clear. When I refer to "stack" I refer all instances of ContextPart (well, subclasses) and all the objects reachable from there.
Cheers, Juan Vuletich
Thanks a lot in advance!
-- Mariano http://marianopeck.wordpress.**com <http://marianopeck.wordpress.com>
-- Mariano http://marianopeck.wordpress.com