Documentation for unix VM source / writing plugins?

Tim Rowledge tim at rowledge.org
Thu Jun 2 17:50:23 UTC 2005


In message <1117721699.429f1463968dd at tournedix.iutc3.unicaen.fr>
          François THIMON <thimof at iutc3.unicaen.fr> wrote:

> Hi squeaker!
> Have you already checked this??
> www.iam.unibe.ch/~ducasse/FreeBooks/ CollectiveNBlueBook/greenberg.pdf.
You'll want to lose the space between FreeBooks/ and Collective..
  www.iam.unibe.ch/~ducasse/FreeBooks/CollectiveNBlueBook/greenberg.pdf

and you might find my chapter useful as well
  www.iam.unibe.ch/~ducasse/FreeBooks/CollectiveNBlueBook/Rowledge-Final.pdf

and maybe Ian's
 www.iam.unibe.ch/~ducasse/FreeBooks/CollectiveNBlueBook/porting-subfinal 2.pdf
(include the space!)

Please note that the greenberg chapter is a little out of date (actually pretty
much all of them are by now, but still very useful) particularly as we renamed
'TestInterpreterPlugin' et al. to SmartSyntaxInterpreterPlugin a couple of
releases ago. 'Test' just didn't seem right after it had been thoroughly tested
and approved. 

> 
> This could help you to start with.
> 
> One important thing is that you must define the functions the VM will call
> ("loadModule()" and "char* getModuleName()", if my memories are good) if you
> want to get it to work.
Not if you are writing a proper plugin with Slang.
a) I think you mean 'initialiseModule() since loadModule is part of thecore vm
b) getModuleName() is made for you automatically
c) initialiseModule is optional and only needed if you need to do some work
when the plugin is initialised (duh)

Do take a little time to read the code for some of the subclasses of
SmartSyntaxInterpreterPlugin along with Andy Greenberg's chapter. And do read
the swiki pages on VMMaker and VMMakerTool.


tim
--
Tim Rowledge, tim at rowledge.org, http://www.rowledge.org/tim
No single raindrop believes it is to blame for the flood



More information about the Squeak-dev mailing list