
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 05/01/2010 02:08 PM, Marius Stoica wrote:
That would simplify things a great deal. I've never tried it though... an extra 130K of headers in every source code file that uses the library is a little much, isn't it?
I don't think that's an issue. Most(almost all) of that code is conditionally compiled and the final size of what would end up in a binnary will be very small.
It's still code that would have to be read and parsed for every compilation unit that includes it. Computers are a lot faster these days than when I learned to program, but that's still enough to make me think twice before doing something like that.
Also let me check some of the other libraries in boost.
Here in alphabethic order (Afaict all of these are header only) accumulators - 506k algoritm - 305k archive - 395k asio - 1.5MiB assign - 95k bitmap - 488k bind - 177k
I've used a few of those, and haven't noticed a major compile-speed problem, which is an argument in your favor.
Also because ubuntu screwed up their boost doesn't mean that all distros will. The default compiled behaviour should be the one that works in all cases not the one that's faster imho.
I'm sorry to say that my opinion differs. If someone is evaluating the library against several others to see which one he wants to use, he's not likely to dig into the documentation to figure out how to get the best speed out of it -- he's going to compare the default configurations. I'd like XInt to still be in the running when he does. Also, multithreaded operation is still fairly uncommon. I'd hate to make everyone pay for something that only a few need, especially when the speed cost is so high (the single-threaded version is *twice* the speed of the multithreaded one). - -- Chad Nelson Oak Circle Software, Inc. * * * -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkvccp4ACgkQp9x9jeZ9/wSyOgCfYjm7OjYCKo4zB+6Rcw1oXynr nCsAn0UmyUcQy9z2JWZyxxXiGbPUsGnF =PP+0 -----END PGP SIGNATURE-----