[squeak-dev] re: The solution of

tim Rowledge tim at rowledge.org
Thu Aug 7 23:47:54 UTC 2008


On 7-Aug-08, at 11:21 AM, Igor Stasenko wrote:
>
>
> Maybe i was not precise (sorry for my bad English).
> SystemTracer alone doesn't provide any sophisticated means how to
> terminate a subgraph by replacing edges to something different,
> neither any criteria upon which edges can be replaced/removed etc.
> I mean, this is completely up to you - what objects will/can be placed
> in swapMap.
>
It gives you complete and total control over what goes into the  
wordarray that will be written out as an image, not just what gets  
swapped or clamped. Making a variant tracer that read a spec from XML  
(or whatever) and created objects in the 'new OM' is entirely  
possible. The hardest part (from my point of view) would be reading  
the xml and understanding it. Oh, and designing the entire spec of an  
image in XML would be kinda amusing too.

Much more sensible would be creating some tools in a decent language  
(Squeak, duh) to allow us to define a class graph for the new image  
along with specs for whole it all gets written out. Since the new  
objects would not need to execute anything in the 'old' image there  
would be no problem with compatibility. Then you create a script that  
writes out suitable instances of the essential objects for the new  
image; you do not need to have ever created them in the old image,  
though it may well be simpler to do so in most cases.

You could create an image with a totally different object format,  
image layout, class tree, bytecode set, etc this way. And of course  
you could modify the simulation code so that you could run it all  
before ever compiling a 'real VM. That's what it is all there for.

tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Useful random insult:- His head whistles in a cross wind.





More information about the Squeak-dev mailing list