|
Boost : |
From: Jeremy Pack (rostovpack_at_[hidden])
Date: 2007-11-01 00:11:30
Lasse,
I read through your document. There are actually a number of projects in
this area.
Look up posts to this list by Joel de Guzman, Marco Ceccheti, Marco
Costalba, Mariano Consoni and myself.
As far as what I've worked on (with Mariano Consoni), you can look for:
Boost.Extension or Boost.Reflection. They are both in the sandbox -
svn.boost.org.
The work of the others above has slightly different goals, but they have
some very interesting solutions. Each makes different tradeoffs for ease of
use, genericity, extensibility, thread safety, performance etc. - but can be
used to achieve similar results.
We each used slightly different solutions for supporting multi-argument
constructors - I used Boost.Preprocessor. I think this is an important
feature.
Also, just as a thought - I avoided static functions or singletons to give
the functions and objects more predictable semantics in multi-threaded
applications. I've considered making an optional singleton wrapper so that
the user can have that sort of interface if they'd like, but have not yet
implemented it.
My main concern, of course, is that some workable, flexible, supported
plugin/extensibility solution comes out of these different projects - it's
definitely something that many people need a better solution for.
As you search through the Boost archives on this topic, you'll also find
references to quite a lot of other work in the area.
Cheers,
Jeremy Pack
On Oct 31, 2007 7:40 PM, Lasse Karkkainen < tronic+67zr_at_[hidden]> wrote:
> Hi,
>
> I have written a plugin registration library from scratch during the
> past few weeks. There seems to be a Boost.Plugin library (that I was not
> aware of) out there, but it isn't part of the distribution, so it seems
> fair to reuse the name.
>
> My implementation is far more generic than the old one, and not really
> aimed for dynamic libraries (that's just something that comes for free).
>
> A draft (for comments) is here:
>
> http://zi.fi/plugin/
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost
>
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk