Adventures in Plugging In
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
> > 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))
> 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
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 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