We do the same for our bootstrapper. First allocate space for the objects used by the metamodel: Metaclass, Class, Behavior, Object, UndefinedObject, True, False, their instances, metaclasses, etc. Each object of its corresponding size. After that, fill the header and fields of these objects. Finally, new objects can be created by sending messages to objects in this kernel.
Cheers,
Hi
imagine that I want to bootstrap our nice kernel.
I will need to somehow create a new nil, true, false, instances of new classes Undefined, True, False.
Such instances will then be put on the SpecialObjectArray somehow.
Now I can create a dummy object playing such roles and then use SystemTracer to substitute my placeholder with the true nil false���.
or another trick to swap them. Now anybody has other ideas?
Stef