Compilation times and idiomatic D code

Jacob Carlborg via Digitalmars-d digitalmars-d at puremagic.com
Thu Jul 6 05:00:29 PDT 2017


On 2017-07-05 22:12, H. S. Teoh via Digitalmars-d wrote:
> Over time, what is considered "idiomatic D" has changed, and nowadays it
> seems to be leaning heavily towards range-based code with UFCS chains
> using std.algorithm and similar reusable pieces of code.

It's not UFCS per say that causes the problem. If you're using the 
traditional calling syntax it would generate the same symbols.

> D (well, DMD specifically) is famed for its lightning speed compilation
> times.
>
> So this left me wondering why my latest D project, a smallish codebase
> with only ~5000 lines of code, a good part of which are comments, takes
> about 11 seconds to compile.

Yeah, it's usually all these D specific compile time features that is 
slowing down compilation.

DWT and Tango are two good examples of large code bases where very few 
of these features are used, they're written in a more traditional style. 
They're at least 200k lines of code each and, IIRC, takes around 10 
seconds (or less) to compile, for a full build.

-- 
/Jacob Carlborg


More information about the Digitalmars-d mailing list