The Squeak Virtual Machine #2
Last updated at 10:33 pm UTC on 8 December 2006
To date, there are two virtual machines for Squeak. Amazingly, both are written almost entirely in Squeak Smalltalk. The default virtual machine is described primarily by the classes Interpreter, ObjectMemory, and BitBlt. See the class comments and the classes themselves to learn more about the virtual machine. The Squeak system also includes a translator to C (see CCodeGenerator and the other classes in category Squeak-Translation to C). Together these can generate complete C source code for the virtual machine. If you take advantage of this capability to port the system to other platforms, we would like to hear about it.
Ian Piumarta at INRIA in France has built a just-in-time virtual machine as an experiment. He is now working on a full translator to native code. When the new VM is ready, Ian will announce it. Like the default VM, the JIT VM is written entirely in Squeak Smalltalk.