[squeak-dev] Re: Creating an image from first principles

Eliot Miranda eliot.miranda at gmail.com
Tue Jul 8 17:38:39 UTC 2008


On Mon, Jul 7, 2008 at 10:19 PM, Andreas Raab <andreas.raab at gmx.de> wrote:

> Craig Latta wrote:
>
>>
>>  > ...do the bootstrap: Instantiate the first process, its first context,
>>  > the first message. Run it in the simulator to set up the remaining
>>  > parts of the kernel image (Delay, ProcessorScheduler etc).
>>
>>     I guess I found that last sentence easier said than done. :)
>>
>
> It doesn't strike me as particularly difficiult but then I haven't tried it
> yet. What problems were you running into?
>
>      I don't even think the global lookup issue is all that hard. (I
>> advocate having no system dictionary; keep each class literal in the name
>> slot of the class itself, and have a means of traversing the class tree from
>> a well-known starting point. Scanning through memory for the class and pool
>> literals you want is straightforward.)
>>
>
> Actually, true *globals* (which for the bootstrap means only classes) are
> trivial to deal with: Since the skeleton is created first you have the oops
> for all the globals right there and then, so setting up a mapping that the
> compiler uses for these globals is utterly trivial. 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.


Oops.  Late to the party.  Ignore my earlier post.  Yes, its trivial.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20080708/e5fe4c87/attachment.htm


More information about the Squeak-dev mailing list