Dicebot on leaving D: It is anarchy driven development in all its glory.

Walter Bright newshound2 at digitalmars.com
Mon Aug 27 04:48:15 UTC 2018


On 8/26/2018 5:40 PM, Manu wrote:
> By contrast, another colleague tried writing a small game in his own
> time. His feedback was that it felt 'fine', but he didn't encounter
> anything that made it "simpler than C++", and claimed readability
> improvements were tenuous.
> He wouldn't show us his code. I'm sure he wrote basically what he
> would have written in C++, and that's not how to get advantages out of
> D... but his experience is still relevant. It demonstrates that C++
> programmers won't be convinced without clear demonstration of superior
> expressive opportunity.

Actually, I understand that one. If you look at my conversions of C++ code to D, 
like this one:

https://github.com/dlang/dmd/commit/8322559195c28835d61c99877ea7c344cb0e1c91#diff-1be391ebabb9f6e11079e1ea4ef1158b

The code looks the same, and in fact, is about 98% the same.

I first learned programming in BASIC. Outgrew it, and switched to Fortran. 
Amusingly, my early Fortran code looked just like BASIC. My early C code looked 
like Fortran. My early C++ code looked like C.

The productivity gains of D won't happen until one stops writing C++ code in it, 
and stops thinking in C++ terms. In fact, one gets irked because one is deep in 
the rut of how C++ does things, and it's annoying when one is forced to do 
things a different way in D. Like, why can't I have member function pointers, or 
friend declarations?

Going the other way, though, is even worse - what do you mean, I have to write 
forward declarations? Why can't I pass a string literal to a template? No user 
defined attributes? Why doesn't CTFE work? Who can actually get work done in 
this language?


More information about the Digitalmars-d mailing list