Last updated at 12:12 am UTC on 17 January 2006
The traditional classical SqueakVm is broken down into smaller components with well defined functionality and reponsibility.
Then Squeak MetaObjectProxy (sqMOP) was born. They exist before there are any Squeak objects in the system.
The regular plugin was designed to extend the VM by providing it with Named Primitives.
Their main role of Squeak MetaObject is to bootstrap and support the VM itself. Once the system is started, Squeak objects can directly communicate with these meta objects down under via some suitable named primitives.
Two new components were created so that MobVM can handle compressed files:
A SqueakCompilerPlugin is still missing. It will help to bootstrap a minimal image from source so that SmallSqueak can be started with a 0KB image.
A SqueakObjectDBMSPlugin can also help SmallSqueak to bootstrap from Squeak objects serialized into the object database.
With either of these two plugins, a JITVM will be created on the fly with just enough (no more, no less) objects for the task at hand.