
Ion GaztaƱaga wrote:
I don't know much about Boost.Parameter but my goal is maintain Boost.Intrusive independent of heavy template-metaprogramming machinery, because the library is adequate for embedded systems and I wouldn't want the executable to grow with type-info information/increased compilation time created by meta-programming (I might absolutely wrong with this sentence, so please feel free to correct).
It's not the first time I've seen this, and I still do not understand what the belief of template meta-programming causing bloat is based on. It certainly increases compilation time, of course, since the point is to create a domain specific language for the problem domain -- using the type system -- and evaluate it at compile-time to generate the best targeted code, but it certainly doesn't make the executable needlessly grow at all. All information about types is lost once a program is compiled. (apart from debugging information, of course) RTTI is only emitted for polymorphic types, or when using explicitly typeid(a_type).