On 7/25/2012 1:53 PM, Rainer Schuetze wrote:
The "edit-compile-debug loop" is a use case where the D module system does not
shine so well. Compare build times when only editing a single source file:
With the help of incremental linking, building a large C++ project only takes
seconds.
In contrast, the D project usually recompiles everything from scratch with every
little change.
I suspect that's one of two possibilities:
1. everything is passed on one command line to dmd. This, of course, requires
dmd to recompile everything.
2. modules are not separated into .d and .di files. Hence every module that
imports a .d file has to, at least, parse and semantically analyze the whole
thing, although it won't optimize or generate code for it.
As for incremental linking, optlink has always been faster at doing a full link
than the Microsoft linker does for an incremental link.