G'day,

So, plugins are in effect singletons.

Yes - plugins are singletons, but one of the fundemental ideas of Envisage is
that the plugins themselves are not the interesting parts of the application.
The objects that do *real* work are called services and can be published and
looked up in any number of ways - the plugins themselves are just the delivery
mechanism.

When you use MyPlugin.foos as in your example above, you get a list of
stuff conforming to the IFoo interface.  Is this resolved during the
call to that method, or is it resolved only once upon plugin load?  I
mean: can you add plugins later?

You can add plugin's later (and start and stop them at will), but like I said
they are just delivery vehicles...

I've looked at enthought before, and the barrier to entry for me has
always been the build process and the large number of dependencies.  I
see that you guys now distribute Python 2.5 modules, so that's good,
but prior to that I was stuck on windows and didn't want to downgrade
to python 2.3 to support enthought so I tried compiling under cygwin.
Don't need to tell you how that turned out. :)

Yep - the build has always been an issue!! 8^( Just recently the guys at
Enthought (I don't work there - I just work on Envisage) have been trying to
get this sorted out and move to a Python eggs based deployment...

I actually like all the tools offered (numpy, scipy, etc) but some may
not.  It would be cool if there were more separable versions that
didn't require, say, VTK.  The wiki seems to indicate that you can
build only parts of the toolkit, so maybe my point isn't valid any
more.  Can you just use envisage and traits?

Yep - it is possible(!) - you just have to get the eggs that Envisage relies
on... The Envisage core is in a separate egg to the GUI workbench plugin so if
you just want the plugin framework etc you don't have to have mush at all (you
will need traits of course).... I'll see if I can whip up a minimal list of
eggs required to get Envisage + Traits minus the GUI stuff...

Martin


Reply via email to