Adventures in Plugging In

Brian Brown brian at teuton.org
Thu Feb 27 08:22:14 UTC 2003


Quoting Tim Rowledge <tim at sumeru.stanford.edu>:

> Ned Konz <ned at bike-nomad.com> wrote:
> 
> > On Wednesday 26 February 2003 09:28 pm, Brian Brown wrote:
> > 
> > > I am attempting to understand the Plugin layer and am working
> > > through the tutorial at: http://minnow.cc.gatech.edu/squeak/464
> [snip]
> > Either use the VMMaker tool (recommended!), or do this:
> > 
> > FooPlugin translateInDirectory: FileDirectory default doInlining: 
> > true.
> I'd recommend using the VMMaker or VMMakerTool when possible because it
> will put things in the 'right' place (for some definition of 'right')
> and you can easily do multiple plugins or even the whole vm with it.
> 
> To use the VMMaker, look on the swiki and search for 'vmmaker'.
> Basically for your simplest case, try
> (VMMaker default initializeInternal: #() external:#(FooPlugin))
> generateExternalPlugins
> Using the VMMakerTool will probably seem easier since it provides a GUI;
>  + open the tool (world menu-> open-> VMMaker.

My image doesn't have this choice, but I read the class comment from VMMakerTool and did: VMMakerTool openInWorld to get the GUI.

>  + drag FooPlugin from the leftmost column of possible plugins to the
>  right column (I'm assuming you want to make it an external plugin
>  because to make an internal one you have to make the rest of the vm as
>  well)

The one I was typing in the code for and the FooPlugin2 example I found in the image don't show up in the list of available plugins, but I imagine I'll have somehow let the system know they are plugins...


>  + press the 'generate external' button.
>  + wait a moment.
>  + do whatever compiler magic your machine needs.
> 
> As you've discovered, the problem with a system that is constantly being
> improved is that doc can get out of date.

Oh well, at least there was something *to* get out of date :)

So is the process:
Build the Squeak Classes to access the plugin (primitives)
Build the primitive classes
Have VMMaker generate the C code 
compile and use

... or does VMMaker do more in terms of building the primitives ( or should I just read the wiki and quit asking questions ;)

Thanks Tim, (and ned) for answering my questions. This definitely puts me on the right track.


> 
> tim
> 
> -- 
> Tim Rowledge, tim at sumeru.stanford.edu, http://sumeru.stanford.edu/tim
> Strange OpCodes: LINO: Last In, Never Out mode
> 
> 
> 


-- 



More information about the Squeak-dev mailing list