[squeak-dev] Re: Modular Plugins

K. K. Subramaniam subbukk at gmail.com
Wed Dec 23 18:18:35 UTC 2009

On Wednesday 23 December 2009 09:25:18 pm Andreas Raab wrote:
> K. K. Subramaniam wrote:
> > On Tuesday 22 December 2009 01:21:36 am Andreas Raab wrote:
> >> David T. Lewis wrote:
> >>> On Mon, Dec 21, 2009 at 09:04:21AM +0530, K. K. Subramaniam wrote:
> >>>> 2. Generate support header files like sqVirtualMachine.h along with
> >>>> *Plugin.c file, so that the code can be built independent of the VM
> >>>> directory layout. This will be useful while porting sq*.c files to a
> >>>> different platform - say like hacking device names or timings.
> >>>
> >>> What to folks think about this idea? I think that the intent of this
> >>> suggestion is to make it potentially easer to generate and build an
> >>> individual plugin without the need to build the entire VM. The
> >>> down side would be that it could cause problems for the people
> >>> who write and support the platform code.
> >>
> >> I'm not sure what is meant with the above. Most plugin header files are
> >> not generated but hand written. Those that are (interp.h etc) already
> >> are generated side-by-side with the plugin code. So I'm not sure what is
> >> being requested here.
> >
> > 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.

> > 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?

I have seen Scratch plugin sources packaged for ex-vm tree builds. It extracts 
only the needed header files from SVN. But it complicates maintenance like you 
stated in an earlier mail. Either option (full-tree vs. copied tree) look 
extreme to me. All that is needed is a zip file with just the vm headers and 
source files. External plugins can be packaged and built individually. They 
could even become squeaksource projects like VMMaker.

Thanks .. Subbu

More information about the Squeak-dev mailing list