[squeak-dev] Re: Creating an image from first principles
Paolo Bonzini
bonzini at gnu.org
Fri Jul 11 08:41:07 UTC 2008
> Something like this is going to be full of subtleties, so maybe
> simulation offers benefits that gestation doesn't. Any thoughts?
I like the simulation approach a lot; it is very similar to what GNU
Smalltalk does to bootstrap its images, except that gst obviously uses C
code rather than Smalltalk -- but that does not matter, it's just a
different programming language. If you're interested I have a few
documents on how this is done; they're written in normal English so no
GPL woes! >:->
As Craig pointed out, the devil is in the details of starting up all
threads; but if this is done, I think it would benefit all of Squeak.
Note that you can have "doits" well before you finish bootstrapping the
system. You can run each doit in a separate Process and simulate until
that process exits.
> It's class and pool variables that are tricky because even
> Dictionary>>at: may not exist in the image that you're trying to compile
> so doing the lookup directly in there would be quite tricky. It would be
> doable if one assumed a particular organization of the classes (i.e.,
> the n-th iVar is the dictionary of class vars) and then interpreted it
> externally but it seems like an unnecessary complication for an initial
> bootstrap.
That's what gst does, and it's not very complicated after all.
Paolo
More information about the Squeak-dev
mailing list
|