Isn't it about time for D3?

Wulfklaue via Digitalmars-d digitalmars-d at puremagic.com
Wed Jun 14 04:34:09 PDT 2017


On Wednesday, 14 June 2017 at 09:18:58 UTC, Jonathan M Davis 
wrote:
> If you're maintaining your code and making the occasional, 
> required adjustments when the language or library changes 
> something that requires adjustments, then you should be just 
> fine without having to do massive code rewrites or anything 
> like that (and at this point, breaking changes normally involve 
> a deprecation process so that they don't just force you to 
> immediately change your code).

That is my point exactly. I have nothing against evolving a 
language slowly over time to include more features. A few things 
get obsolete, ... no big issue. New options are added. Again. No 
big issue.

But the moment a language opens up for developers their 
"wishlist", it seems everybody wants "their" changes added to the 
language. And this then turn into a language that is constantly 
changing. That is consider more the worst case scenario.

Frankly, if things are handled in a evolutionary way, then i do 
not have a issue with it. As long as thing do not turn out into: 
"well, x percentage of your code just become useless".
;)

The main issue is library vs existing code. There is a lot of 
code out there that is now abandoned but still (mostly) works. 
The moment the evolution gets too far, your starting to get more 
and more code out there that simple does not work.

In my personal opinion, if you want to pull something like that, 
then make a totally complete clean break. Change the language 
name ... And yes it sounds radical and silly but if there is one 
frustrating point that people have new to a language, is legacy 
non-functional code.

I can right now look up Swift examples and get over 50% that 
simply do not work because the language evolved so fast and 
everybody used the name "Swift", not "Swift 1.0", "Swift 2.0"... 
Its frankly a mess. And while i personally love some of the 
features that Swift has, its a mess for anything outside of the 
pure Apple development.

Just putting the cards on the table but frankly D is a generic 
name ( Mars was not much better ). When Googling for D code, the 
results are hit or miss. When Googling for Dlang, it tries to 
search on GoLang. Marketing is hard when your product is so 
generic named ( double pun is intended ) :)

Just changing the library to D3 and not the base D name will 
result in people finding old code, not getting it to work, 
getting frustrated and simply ignoring the language. Hey, despite 
loving the syntax, did the exact same thing with Swift.

With D i can find 3 or 4 year old code and get it running 
something without a single issue. Or a quick fix. Just saying, 
its not just about the language and library features. it also 
about what is round the language. The examples and code out 
there, the packages, the editors and other support.


More information about the Digitalmars-d mailing list