[squeak-dev] Re: The solution of (Was: Creating an image from first
principles)
Klaus D. Witzel
klaus.witzel at cobss.com
Wed Aug 6 21:41:23 UTC 2008
On Wed, 06 Aug 2008 22:04:10 +0200, Andreas Raab wrote:
> Igor Stasenko wrote:
>> The process of picking objects, dealing with unwanted references,
>> cutting an object graph - all this is on hands of developers.
>
> And of course, all of this "picking objects, dealing with unwanted
> references, cutting object graphs" is exactly why this process has
> nothing in common with creating an image from first principles.
What Igor decribes is indeed usable for doing such things, logically
cutting an object graph out of the existing one, do one or two </grin>
substitutions, then put it to work in another Hydra thread+heap.
But [what he describes] is also sufficient for creating a new class
hierarchy (other metaclass concept anybody? traits anybody), with
supporting instances created from themselves, with no backpointer into
whatsoever, and then putting that object graph to work in another Hydra
thread+heap. This view on the very same thing is perhaps of more interest
to you.
And when looking to put first principles to work, the second view is what
you want (I think so). Especially the "no backpointer into whatsoever"
facility is offered in an elegant and typically smalltalkish way. The DSL
is Smalltalk (what else?), no strange file format to care about, no bit
level/header fiddling to care about. Just stay at the Smalltalk level,
limited only by the currently running VM.
> It is just transforming one mess into another and not all what I am
> after.
I think that the mess would be the result of the application of the
proposed methods for arriving at the new image ;)
Only those things that are part of the contract with the currently running
VM must be taken care of, and that is independend from how one would
arrive at a new object graph.
Of course when one wants changes to the object/header format and other
such things (better hash values, anyone?), one also wants the
corresponding changes in the VM, but this would break compatibility.
/Klaus
> Cheers,
> - Andreas
>
>> But then, when you having a set of objects to be cloned, and a set of
>> references to be substituted - this can be done in atomic way.
>> It also allows to fire up new image without any file i/o.
>>
>>> tim
>>> --
>>> tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
>>> The colder the X-ray table, the more of your body is required on it.
>>>
>>
>
>
>
More information about the Squeak-dev
mailing list
|