On Monday, 6 June 2016 at 02:20:52 UTC, Walter Bright wrote:
Andrei posted this on another thread. I felt it deserved its
own thread. It's very important.
-----------------------------------------------------------------------------
I go to conferences. Train and consult at large companies.
Dozens every year, cumulatively thousands of people. I talk
about D and ask people what it would take for them to use the
language. Invariably I hear a surprisingly small number of
reasons:
* The garbage collector eliminates probably 60% of potential
users right off.
* Tooling is immature and of poorer quality compared to the
competition.
* Safety has holes and bugs.
* Hiring people who know D is a problem.
* Documentation and tutorials are weak.
* There's no web services framework (by this time many folks
know of D, but of those a shockingly small fraction has even
heard of vibe.d). I have strongly argued with Sönke to bundle
vibe.d with dmd over one year ago, and also in this forum.
There wasn't enough interest.
* (On Windows) if it doesn't have a compelling Visual Studio
plugin, it doesn't exist.
* Let's wait for the "herd effect" (corporate support) to start.
* Not enough advantages over the competition to make up for the
weaknesses above.
Hello,
I have to stress I am beginner in programming, mainly interested
in number crunching in academia (at least so far). I started to
write a small project in D, but had to switch to C for few
reasons:
1) Importance for my CV. I know Python, if I add also C - it
sounds, and could be useful since the C language is, apart from
the other reasons, is popular and could help me wit the future
job, both in academia and industry, since there are many C/C++
projects.
2) The libraries - in the scientific world you can find
practically everything which has already been coded in C, => many
C libraries. To link it to be used within D code requires some
work/efforts, and since I am not that confident in my IT skills,
I decided that C code calling C libraries is much safer.
3) For C - a lot of tutorials, everything has been explained at
stack overflow many times, huge community of people. E.g. you
want to use OpenMP, Open MPI - everything is there, explained
many times, etc.
4) The C language is well tested and rock solid stable. However,
if you encounter a potential bug in D, I am not sure how long
would it take to fix.
5) Garbage collector - it will slow my number crunching down.
Please, do not take it as criticism, I like D language, I tried
it before C and I find it much much easier, and user friendly. I
feel it is more similar to Python. On the other hand C++ is too
complex for me, and D would be the perfect option for the
scientific community, if the above points would be fixed somehow..
Best luck with your work!