Compilation times and idiomatic D code
Seb via Digitalmars-d
digitalmars-d at puremagic.com
Fri Jul 14 16:35:31 PDT 2017
On Friday, 14 July 2017 at 22:45:44 UTC, H. S. Teoh wrote:
> Result: 8MB executable size (!).
>
> Of course, this comes at a runtime cost of an added level of
> indirection (now you have to call a virtual function through
> the interface to integrate with earlier components in the
> pipeline). But at a 60% reduction in executable size, I think
> it's a worthwhile tradeoff. :-)
That's a very interesting idea!
However, I wouldn't want to insert this into code manually, maybe
a simple flag-opt-in support in DMD that detects UFCS pipes with
X components and then inserts the type erasure hack could solve
most problems for the time being? That way it wouldn't create a
WTF moment when explaining D code and when Stefan or someone else
manages to implement something more sophisticated, no code would
need an update.
More information about the Digitalmars-d
mailing list