
On Sat, Mar 21, 2009 at 11:05 AM, Raindog
Yang Zhang wrote:
Václav Haisman wrote:
Any decent compiler supports precompiled headers. Those help quite significantly with compilation time of source that uses Boost, IME.
I (and others) have found that precompiled headers don't actually help that much with build time. It only saves on parsing and name lookup time, not on code generation time.
In my experience, code generation time is minuscule compared to the rest of the process, especially with libraries like spirit and xpressive.
Whether or not precompiled headers lead to faster builds is besides the point, because they increase coupling. The point of good physical design is to reduce coupling. Reduced coupling has many benefits beyond its effect on build times, in fact it often leads to slower "full rebuilds". Also, good physical design sometimes requires compromises with logical design, type safety, or even performance. The problem is that bad physical design has no measurable effects on anything until it's too late. Once it becomes a problem, reducing physical coupling is very difficult. Boost with its header only nature is beyond that point, IMO. Emil Dotchevski Reverge Studios, Inc. http://www.revergestudios.com/reblog/index.php?n=ReCode