On 8/12/2013 5:19 PM, H. S. Teoh wrote:
5. Do we really want D to be restricted to only platforms that have
the latest Python up on them?
I think that's a bit of hyperbole. It's the same as saying "do we want D
to be restricted to only platforms that have g++/make installed?"
No, I don't think it's hyperbole. I would bet that a C++ compiler (which
invariably come with a make) exists on essentially every platform 32 bits or
larger. Python? Doesn't seem likely.
If we have a D build tool that we ship with the dmd sources, then we
will have (1) a superior build system to make, (2) no external
dependence on gmake / python / whatever else. Since we're aiming for dmd
to be itself written in D, we might as well just self-host the build
system too. And this tool can be used to build other D programs in
general, not just dmd / druntime / phobos.
I think you're underestimating the amount of effort needed to build a "proper"
build tool, even to get it up to the level of make. For example, gmake has the
-j switch, enabling building using all the cores on your CPU. This is a big
deal, but I don't think it's so easy to create a bug-free implementation of it.
(DM make does not have -j.)