Breaking changes in Visual C++ 2015
d user via Digitalmars-d
digitalmars-d at puremagic.com
Thu May 7 05:16:17 PDT 2015
On Wednesday, 6 May 2015 at 18:26:27 UTC, Brad Anderson wrote:
> https://msdn.microsoft.com/en-us/library/vstudio/bb531344(v=vs.140).aspx
>
> I'm sharing this specifically so we can have an unproductive
> flamewar about whether breaking changes in D are sometimes
> worth it or if they are holding D back from mass adoption :).
the truth is, one of the biggest things holding D back from mass
adoption is the complete lack of tooling compared to basically
every other mainstream language.
Compare D to Go,
https://golang.org/cmd/go/
Go comes with a package manager, a linter, a static analysis
tool, a formatter. Does D have these in some form? Sure. But you
have to go hunting for them, and they're OK at best.
And really, the only thing to blame for this is dmd. Go provides
a Go parser and tokenizer right in their standard library - just
one of the benefits of their compiler being written in Go.
A lot of D's issues come back to: dmd is long in the tooth.
Things D used to tout(faster compiler times) aren't really there
anymore. My _desktop_ has a 8 core CPU - which dmd uses a whole 1
of when compiling. Due to how modules are compiled, it's _slower_
to do separate object compilation like in C++, so it's impossible
to even get a gain from parallel compilation.
Then you have LDC and GDC which generally lag behind dmd by a
version or two(usually moreso for GDC,) fragmenting the libraries
heavily because many new D versions fix tons of bugs. Due to
dmd's license, it can't even be redistributed on Linux, BSD, etc.
So now you have compilers for major Linux distros that are
lagging versions behind. And really, the packages aren't well
maintained anyways - LDC got blacklisted from Ubuntu for being
unmaintained.
If there's anything to learn from Go's success, it's that you
don't need a good language design to be successful. If you want D
to be successful, submit some PRs to SDC. If you want D to stay
unpopular, keep moving towards Haskell with braces.
More information about the Digitalmars-d
mailing list