I can load more than one Machine at the same time: in my jargon, a Machine has the objects and classes of a living image. Instead of being a singleton, I can create, populate and load from images more than a Machine. The main code at:
I could generate a minimal image for a hello world (< 300 bytes!), see the code at:
I exercised the parsers loading and executing the Pharo file outs:
All written using TDD, as usual :-)
Now I have many machines in memory, I would like to implement this idea:
- Load a Machine A (with its classes, methods, objects) having a complete class library
- Load a Machine B, having only some classes and objects
- Set Machine A to be the host of Machine B.
- Reimplement #doesNotUnderstand message processing in Machine B so, if a message is not located in that machine, the search of the corresponding method continues in the similar classes at Machine A. In this way, I could use all the power of Machine A, to operate on a slim Machine B. Machine A could have all the development tools/classes/methods, meanwhile Machine B still have a minimal size. A similar ideas is being explored by @morplenauta (Squeak committer), see Spanish email list.
Another project: to have a minimal static files web server, using native .NET objects (System.NET).