Earlier quoted context omitted.
"Massive bloat. Take a look to the Boost libraries and cry." Aside from your tears, what is the evidence that boost is bloated? Too slow? Too much source code? Too many files? I've been using Boost for nearly a decade. It does a ton of useful stuff (from template metaprogramming to fast matrix algebra), it's loosely coupled, and it's insanely fast. Given it's scope, it's the least bloated library of which I know. C++…
> ton of useful stuff (from template metaprogramming to fast matrix algebra), it's loosely coupled, and it's insanely fast It's actually not all that fast in a lot of cases. Boost's matrix manipulation support is particularly slow: http://eigen.tuxfamily.org/index.php?title=Benchmark-August2... Also a lot of the template aerobatics generate a ginormous number of symbols which massively increase the binary size and ca…
You've picked a benchmark of the most highly optimized matrix algebra libraries, and found that uBLAS is mid-pack, even though a) it isn't particularly optimized for any platform, and b) its goal is to result in the clearest possible syntax without sacrificing adequate performance. Talk about picking nits.
"Also a lot of the template aerobatics generate a ginormous number of symbols which massively increase the binary size and cache pressure."
When it really matters (which it rarely ever does): man strip
"I've always seen Boost (and to a large extent the STL) as a demo library to show off what's possible with templates rather than something to be used in everyday code"
I worked on shipping commercial products that used boost and the STL, and I did nearly all of my speed-sensitive code with it in grad school. It's far more than a demo library. Like I said before, you don't have to use all of it to use some of it.