On Friday, 16 December 2011 at 21:45:43 UTC, Andrei Alexandrescu wrote:
Once we solve the static constructor issue, function-level linking should take care of pulling only the minimum needed.

This sounds fantastic.

One interesting fact is that a lot of issues that I tended to take non-critically ("templates cause bloat", "intermodule dependencies cause bloat", "static linking creates large programs") looked a whole lot differently when I looked closer at causes and effects.

I'd be careful to overgeneralize from this though; templates
do have the potential to bloat things up, etc. Though
static linking has and always shall rok.


(For bloated templates, I had a monster of one in web.d
that shrunk the binary by about three megabytes by refactoring
some of it into regular functions. Shaved two seconds off the
compile time too! Note this binary is my work project, so your
results may vary with my library.

It was basically inlining several kilobytes of the same stuff
into hundreds of different functions... 10 kb * 300 functions
= lots of code.)

Reply via email to