On Thursday, 12 November 2015 at 22:50:08 UTC, Walter Bright
wrote:
On 11/11/2015 9:19 AM, David Nadlinger wrote:
Of course, many of the problems could have probably been
avoided if there was an
iron-clad rule that the module dependency graph must remain
acyclic from the
beginning of development (at least at the level of units of
compilation).
In hindsight, I would have made D enforce that (Go does).
That's impossible because of the way we do mixin. You can have a
template that do mixin without creating loop because then you
pass it down identifiers that won't resolve.
That has been a giant pain in various situations in project I
work on.