Quora: Why hasn't D started to replace C++?
Seb
seb at wilzba.ch
Wed Jan 31 11:42:14 UTC 2018
On Wednesday, 31 January 2018 at 10:35:06 UTC, Benny wrote:
> * three compilers
Not sure why that's a bad thing. They all have their ups and
downs:
- dmd SUPER fast compilation
- ldc multiarch + good optimization + cross-compilation
- gdc multiarch + good optimization (in many cases better than
LLVM) + cross-compilation + GNU
Doesn't the download page explain this?
https://dlang.org/download.html
If not or you have other reasons why this is a problem, please
let us know and/or open an issue.
FWIW there are dozens (maybe even hundreds) of C++ compilers and
no one complains about that.
> And 3 different installation method's depending on the platform.
>
> Windows: DMD installer, LDC manually extract zip and setup
> path, GDC ...
That's only an issue on Windows.
For Posix there's the official install.sh script [1].
[1] https://dlang.org/install.html
There's WIP to provide a similar script for Windows [2], but man,
I haven't used a Windows machine in the last seven years - or in
other words: it's a serious effort to develop something you have
no idea about, can't test locally and you don't need.
BTW in my experience, the people using Windows are the ones who
complain the loudest and fix the least. I guess that's the crash
of different philosophy: MS / Corporate world vs. Unix / Open
Source world.
I bet that it would take a experienced Windows developers two or
three hours to write such a script (or add support for installing
ldc to the installer).
[2] https://github.com/dlang/installer/pull/275
> Let me add a few other issues to your list:
>
> * Library
1) Feedback is very important to us, but please add open issues
for these things to Bugzilla. Otherwise they get easy lost and
not everyone is reading every message on the NG.
Not everything obvious to you, is obvious to others.
For example, for a long time it wasn't obvious to me that it's
bothering people as I prefer "one pagers" - it makes searching
for symbols easy
2) Are you aware that there's also the ddox build?
https://dlang.org/library/std/datetime/date.html
It's just not the default yet, because of some issues.
However, it has been there for a long time and you can switch
between both modes with the version switch on the top right.
> You know the extra advantage: It makes finding information from
> a search engine like Google way more easy and less clutter /
> clean.
Have you tried the search bar at the ddox build?
> The real problem is that anybody can find 100's of issues that
> are simply unproductive or make the language look like a mess.
> And they get reported all the time but there is nobody to work
> on them.
Maybe for other languages, but for D they don't.
There are about ~30 still open issues reported in 2017 for
dlang.org and they are mostly just specification things [1].
[1]
https://issues.dlang.org/buglist.cgi?component=dlang.org&list_id=219211&product=D&resolution=---
> When the company line is: Do it yourself or pay somebody to do
> it. Guess what the first reaction of a lot of people is.
Well, the time of volunteers is limited and can you blame anyone
if he prefers to work on things he enjoys instead of fixing your
UX problems which aren't any problems for him?
That being said, tons of bugs are fixed in every release and
dlang.org is getting better almost every day:
https://dlang.org/changelog/pending.html
The website repo is one of the lowest traffic repos, 28 PRs have
been merged just in the last seven days:
https://github.com/dlang/dlang.org/pulse
The activity is a lot higher for Phobos and DMD:
https://github.com/dlang/phobos/pulse (50 merged PRs in the last
seven days)
https://github.com/dlang/dmd/pulse (41 merged PRs in the last
seven days
> D is highly individualized as a language with actually very
> little corporation between the 100's of project, that get
> abandoned when the only developer runs out of time or moves to
> a differed language.
Yes, obviously the current situation isn't ideal, but it's not
too bad either and we have found one good, but probably not so
well-known yet way to tackle this: the dlang-community
organization on GH (https://github.com/dlang-community).
A lot of important, but more or less abandoned repositories have
been adopted, s.t. there's a common place to submit bug fixes and
feature PRs and its ensured by CIs that they are always in a good
state, e.g. always compile with the latest DMD.
And companies start to like this concept too, e.g. see this
recent discussion where Sociomantic volunteered to step in and do
a proper release process for dfmt:
https://github.com/dlang-community/dfmt/issues/320
> I put a lot of money in several FOSS projects and it always
> feel like trowing money into a bottomless pit. Very few
> projects show where there money is being spend,
This is about to change soon for D. There's WIP to use
OpenCollective
The announcement should happen soon.
Stay tuned!
> While yes, D gets used by some big companies on specific
> projects, the reality is that this seems to stem more from one
> developer in that company using D and not a real interest to
> use it company wide.
>
> D simply has too few people, no real goal, is a mishmash of
> different people with mostly individualized goals, a lacking
> and unclear foundation, lacking in paid developers.
Again, of course, the situation isn't ideal, but there are a few
changes about to happen soon.
Here's a spoiler:
1) Andrei does an excellent job at managing his students [1] and
there work over the last couple of months has been tremendous. As
the experiment with UPB was very successful, there will be more
projects like this one and global scholarship
2) The vision document will finally get updated (there have been
a few delays due to holiday, illnesses etc.)
https://wiki.dlang.org/Vision/2017H2
3) More community input (I'm preparing a State of D survey atm)
4) More active voting by the community on important issues
5) Better documentation and overview on what the foundation is
doing
Currently under discussion/work:
6) Using OpenCollective for tracking expenses openly
7) Offering membership packages for companies
8) Doing bi-annual Kickstarter compaigns for important issues to
the community (e.g. "fix shared")
(more things are WIP in stealth-mode)
> I said it before, i tried getting into D for over a year and
> keep running into just stupid issues with DMD regressions,
We have setup a project tester a few months ago that tests the
most popular projects on GH on every PR.
> editor plugins that do not work, unfinished or unsupported
> projects, just badly designed documentation layouts, ... just
> everywhere lacking. And with the amount of time trying to get
> things working, reporting issues on github, ... sigh ... so
> much time better spend on other languages.
Well, you gotta choose - draining your brain with Rust or
enjoying working with D and investing the your drain-brain time
into fixing small usability issues ;-)
> I told before if there is no leadership to focus resources and
> the main developers are more focused on adding more features to
> the compiler that is already overflowing, then how do you
> expect to see things solved?
As mentioned above, there's. However, it's not very visible as a
lot of work happens in stealth-mode atm and only a tiny bit makes
it to the DBlog:
https://dlang.org/blog/category/core-team
https://dlang.org/blog/category/d-foundation
More information about the Digitalmars-d
mailing list