On Friday, 5 April 2013 at 00:39:49 UTC, bearophile wrote:
Vladimir Panteleev:
D code already compiles pretty quickly, but here's an
opportunity to nearly halve that time (for some cases) - by
moving some of rdmd's basic functionality into the compiler.
Make the D compiler search for its modules was one of the first
(unwritten) enhancement requests. That's the right default for
a handy compiler (plus a compiler switch to disable that
behavour). But for backwards compatibility I think that switch
has to do the opposite, to enable the recursive search.
Yes, I agree completely. D is the only programming language I
know that has both a module system, and the archaic C/C++
compilation model. Even Pascal got this right!
I think Rust got off the right foot in this regard. The compiler
("rustc") is a low-level detail which most users don't interact
with directly; instead, there's "rust", a tool which acts as the
user-friendly interface for the compiler, package manager,
documentation tool, etc. This is in contrast with D, where the
tool in the spotlight and the shorter name will throw cryptic
linker errors at you if you don't to specify all modules on its
command line.