[squeak-dev] Re: The solution of (Was: Creating an image from
first principles)
Tony Garnock-Jones
tonyg at lshift.net
Sat Aug 9 09:41:13 UTC 2008
Hi,
K. K. Subramaniam wrote:
> My interest got
> piqued because if the primal image is so complex that it requires jiggery
> pokery perhaps it is time to apply Occam's razor to it. Transmutation (aka
> bootstrapping) from one type of system into Smalltalk should not be so
> complex that SystemTracer remains only source of information even after nine
> years.
Have a look at the bootstrapping process for Slate, starting perhaps
with http://slate.tunes.org/repos/stable/src/mobius/vm/bootstrap.slate.
The fact that the program is written in Slate does not detract from what
the program does, which is (if I remember rightly!) to build and
serialise a model of an image that does not rely on any characteristics
of the host language.
(Compare approaches to implementing call/return in simple interpreters:
you can use the host language's support for call and return, by
recursing into your evaluator in the host language, or you can reify the
stack, and so avoid requiring the host language to even have call/return
semantics. Similarly, Slate reifies the image being constructed, so
doesn't depend on being image-based itself.)
(Also, I had a go at the same thing myself: See the definition of
(bootstrap-image!) in
http://www.eighty-twenty.org/~tonyg/Darcs/smalltalk-tng/r1/kernel.scm.
This is a Scheme system implementing an image-based Slate-like language.)
Regards,
Tony
More information about the Squeak-dev
mailing list
|