Isn't it about time for D3?

Liam McGillivray via Digitalmars-d digitalmars-d at puremagic.com
Fri Jun 16 21:32:41 PDT 2017


On Wednesday, 14 June 2017 at 12:08:16 UTC, Mike wrote:
> > THINGS TO DROP
> --------------
> * C++ interoperabiliy
> Walter's right:  memory safety is going to kill C and C++ will 
> go with it.  Don't waste time on this; it's not going to matter 
> in 10 or 20 years.
Thank you for making a list to give people an idea of what D3 
could be, but I definitely don't support less interoperability 
with C++. I want D3 to have a better argument to transition from 
C++ than D2 has.  With all the C++ API's out there, making D 
incompatible would be a ginormous deal-breaker for a ridiculous 
number of projects.  D3 should seek to be worth the transition 
from C++.

For those who say that this idea can't go anywhere without an 
idea of what changes it would make, I'll relink to the page I 
already posted.  There are many proposals that were rejected due 
to "breaking changes" that should be relooked for D3.
https://wiki.dlang.org/Language_design_discussions

People who say they like D2 for "stability" don't need to worry.  
What would be a threat to stability is breaking changes in D2.  
But that was never allowed, so you must not worry.  If D3 was 
released, you may still use D2 just as you would have otherwise.

For the people who talk about D3 being an alternative to, rather 
than a replacement for D2:
I think that D3 should seek to be a better option than D2 for 
virtually every new project.  If done right, it will barely split 
the community; I'm hoping for D3 to expand the popularity of D to 
overshadow what D2 ever was.  Improving some things in D would 
make it an easier sell to C++ programmers, even in converting 
existing projects.  What I think should be one of, if not the #1, 
main goal of D3 is to significantly shrink the number of 
scenario's in which C++ is more viable than D (to less than one 
third. Not "more viable" in the opinions of the D fanatics here, 
but to everyone who properly considers D vs C++.  I feel like D 
only needs one more major (breaking) revision to do this, and it 
would be a less dramatic change than D1-D2.

For those who are saying that everything is right with D2, I want 
to point out that there is a bias to the people in this forum.  
It is that people posting here tend to be "insiders", who don't 
mind/see the problems that discourage others from using D.  There 
are surely many "outsiders" out there (not reading this) who have 
considered D in the past, but chose C++ instead for valid reasons.
I recommend searching the internet for others opinions on D.  You 
may find disadvantages of D apparent to other programmers that 
you never thought of.  Have you ever talked to a C++ programmer 
about what they think of D, and why they don't use it?

Also, I must say that although D is often discussed as a "systems 
programming language", I also have high hopes for it as an 
application programming language.  Once it's more widely 
supported, it can significantly lower the barrier-of-entry for 
programming.  People naturally gifted at programming probably 
don't realize how ridiculously high the barrier of entry is for 
most people, even those who are interested.

I hope that Walter and Andrei give a proper response to this 
thread.  I wonder why they haven't.


More information about the Digitalmars-d mailing list