I cheated ;-) I started with a script (export.st) that takes content of Core packages that are not present in the Gofer image and exports a long file containing definitions of classes and traits (in safe order) and all replaces original methods with proxy methods that when called load original source code, log method name and restart yourself. It is very similar to messages tracking but without VM support. Then I used it for modified initCore script so I got list of messages that are necessary for initialization and function of Morphic doing this tasks. Then I took this list of messages, created a changeset containing it and exported it. Finally I manually checked the Undeclared and unimplemented calls. It is almost the same way that I used for creation of MinimalMorphic image in past. Cheers, -- Pavel On Tue, Aug 23, 2011 at 9:47 PM, Lukas Renggli <renggli@gmail.com> wrote:
Very cool. I wonder how you created that load script?
Lukas
On 23 August 2011 18:58, Stéphane Ducasse <stephane.ducasse@inria.fr> wrote:
Thanks. I would love to have a cleaner morphic kernel :) But it will take time.
Stef
On Aug 23, 2011, at 3:31 PM, Pavel Krivanek wrote:
Hi,
uMorphic is an experimental image based on Pharo Kernel (+Gofer) that contains only core of Morphic functionality. It has no windows or fonts, menus nor halos support, it can only open a basic Morph in the world and drag it with mouse. The purpose of this image is to provide information for Morphic packages reorganization.
Now the basic cleaning was processed on this package so when it is loaded to basic gofer image, no new Undeclared nor unimplemented messages are added! :-) So it should be quite stable too.
It has 2,9 MB and it modifies behavior of 32 methods.
You may download and try it here: http://windmap.cz/playground/trash/uMorphic.zip
Cheers, -- Pavel
-- Lukas Renggli www.lukas-renggli.ch