
Hi Steven,
I uploaded another version of dimension.hpp. If there are any problems let me know. I hope that these optimizations are sufficient.
I would like to publicly commend you on an excellent job of optimizing the core metaprogramming code in the mcs::units library. I ran a test of the compilation time on unit_example_4, which is the most extensive example, comparing my original implementation to your optimized one. The results are quite impressive: averaged over four trial runs starting from a clean build using gcc 4.0.1 on a 2.16 GHz MacBook Pro, I get original dimension.hpp : 78s compilation time new dimension.hpp : 8s compilation time Time to build all examples: original dimension.hpp : 105s new dimension.hpp : 28s Almost 10x and 4x, respectively = very nice work. This removes one of the major objections raised to previous versions of this library and makes using it relatively painless. Thanks for your input. I've checked the output of the example programs, and everything appears to work as previously, so I have committed the new code (v0.6.0) and posted a new version in the Vault which I heartily recommend to interested parties. Matthias