[squeak-dev] Re: Modular Plugins

Andreas Raab andreas.raab at gmx.de
Wed Dec 23 18:34:45 UTC 2009

K. K. Subramaniam wrote:
>>> Files like sq.h, sqMemoryAccess.h, sqVirtualMachine.h are all generated
>>> by
>> I'm sorry but that is incorrect. None of these files are generated; they
>> are hand-edited and checked into SVN, see
>> http://squeakvm.org/cgi-bin/viewcvs.cgi/trunk/platforms/Cross/vm/
> You are right. I stand corrected. Thanks. A closer look at SVN shows only 
> unix/src/ and Mac OS/.. contain auto-generated files. Though why these 
> intermediate files (but not their source .cs/.st files) are in SVN is a mystery.

For the same reason that these files are included in the build files on 
Windows as well. They allow one to recompile precisely the same version 
that was used in the binary you're using which is tremendously helpful 
for debugging. We do the same at Teleplace and it's really only the 
difference in build structure (i.e, winbuild/ next to platforms/) that 
prevents me from doing the same for the Windows VM.

>>> VMM. The current procedure assumes that all plugins are being generated
>>> at once along with the vm. It does not consider the case where someone is
>>> working on a plugin outside the vm source tree. For a plugin where only a
>>> few hundred lines of code are involved, full vm sources are an overkill.
>> Yes, and there's no need for that. I've successfully written plugins
>> that either had a very small or even no Slang plugin behind it.
> Are these in public domain? url?

It's very simple: Make an InterpreterPlugin subclass and generate the 
empty SqueakPlugin.c file. That's your starting template. Getting it 
compiled means your build setup is sane. Then add your stuff. Rinse and 

   - Andreas

More information about the Squeak-dev mailing list