(new) Boost.Plugin library

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/

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@trn.iki.fi> 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:
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
participants (2)
-
Jeremy Pack
-
Lasse Karkkainen