Jon A. Cruz wrote:
I think statically linked is not that good. The original intent was for things to be dynamically linked. Ted has done a lot on this front. But again, one key design goal from the beginning was to get to the point where the bulk of the functionality was in plugins/extensions.
The same principle can be used with dynamically linked libraries, as long as GCC takes care of static initialization in C++ DLLs. I think it does, like all other compilers. What's important is that once "static plugins" are implemented, converting from statically linked object files to dynamic libraries will be as easy as altering the Makefile. It could even be configurable at build time.
Personally I'd avoid the term "pattern" unless it was actually a generally recognized design pattern. Since in software engineering "pattern" has a very specific and agreed upon meaning.
That's why I put it in quotes :)
Regards, Krzysztof Kosiński