On Sun, Jun 01, 2014 at 11:13:28AM +0200, Helmut Rohregger wrote:
Am 31.05.2014 17:03, schrieb Bert Freudenberg:
The 'LargeIntegers' module is implemented by the class LargeIntegersPlugin in the VMMaker package.
These modules can be linked into the VM executable itself ("built-in modules") or distributed as separate files ("external modules"). In the latter case they are dynamic libraries (DLLs on Windows, *.so files on Linux etc.)
Are these modules written in Smalltalk and translated somehow to C code?
Yes, that's right. In fact, some VM plugins are written entirely in Smalltalk that is tranlated to C to produce the compiled VM. LargeIntegersPlugin is an example of this.
Here are some links that will give you a better idea of how this works.
The "Back to the Future" paper by Dan Ingalls et al: http://ftp.squeak.org/docs/OOPSLA.Squeak.html
The VMMaker page on the swiki by Tim Rowledge: http://wiki.squeak.org/squeak/2105
"A Tour of the Squeak Object Engine" also by Tim: http://www.rowledge.org/resources/tim%27s-Home-page/Squeak/OE-Tour.pdf
The Cog Blog by Eliot Miranda: http://www.mirandabanda.org/cogblog/
General information about the Squeak VM: http://squeakvm.org/index.html
You should definitely start with the Back to the Future paper. I find that it is worth reading about once per year.
Dave