It's obviously wrong to say that compile time performance does not matter. On the other hand, it's not wise to optimize the compile or run time performance of a library prematurely - start with the most beautiful design and make it more ugly as necessary :)
I think we're drifting far from the topic with the whole traits (hidden or templatized) discussion. Does anyone remember the message Mr. Dawes posted where he described three levels of sophistication for the library (http://aspn.activestate.com/ASPN/Mail/Message/boost/1752449)? In my opinion, if we try to create anything beyond a simplistic, level (1) library on our first try, we're going to fail. The problem that Eugene is trying to solve with the ImplTraits mechanism may be legitimate, but I don't feel that it is part of the simplistic level 1 solution. We need to start talking about what the interface to this library should like like (a domain specific sub-language, as Mr. Abrahams said), and worry about the implementation details (a pimpl is certainly an implementation detail) afterwards. _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost