All right, all right! Interim decision regarding qualified Object methods
bearophile
bearophileHUGS at lycos.com
Thu Jul 12 04:41:46 PDT 2012
Andrei Alexandrescu:
> The issue is template code bloat. My impression from being in
> touch with the C++ community for a long time is that virtually
> nobody even talks about code bloat anymore. For whatever
> combination of industry and market forces, it's just not an
> issue anymore.
There is no proof that template bloat won't be a problem in D (I
remember the first version of the D Objective-C bridge failing
because of code bloat, the second version seems to require
changes in the D language). And it seems L1 code caches of CPUs
aren't growing a lot (so I suggest to not ignore having lot of
code to swap in and out of those 32 kbytes).
So maybe it will be useful to introduce in D some means to attack
the code bloat problem from several sides at the same time.
Some time ago I have suggested one of such weapons, the
@templated() that allows to select what parts of a struct/class
are templated regarding to what template arguments (it's a
refinement of an idea of Stroustrup).
Another weapon to attack the problem is introducing in the DMD
back-end an optimization (already present in LLVM, but I think
not used on default), merging of functions with the same body
(leaving just a jump as the body of the removed function, to keep
their function pointers distinct).
Bye,
bearophile
More information about the Digitalmars-d
mailing list