Which language futures make D overcompicated?
Ralph Doncaster
nerdralph at github.com
Fri Feb 9 22:36:19 UTC 2018
On Friday, 9 February 2018 at 21:05:10 UTC, H. S. Teoh wrote:
> On Fri, Feb 09, 2018 at 08:49:24PM +0000, Meta via
> Digitalmars-d wrote: [...]
>> I think the perception of D being complicated is more from
>> programmers coming from Python/Ruby/JS (and to a lesser
>> extent, Haskell/Scheme/Java). D is quite different if you're
>> coming from a "VM" or "scripting" language because it exposes
>> you to a lot of new concepts such as static typing, value
>> types, templates, monomorphization, immutability, memory
>> layout, linking and compilation, compile-time vs. runtime,
>> etc. It's not that these programmers are less skilled or less
>> knowledgeable; it's that if they've never used a language that
>> has forced them to consider these concepts, then it looks to
>> them like D is a massive step up in complexity compared to the
>> language that they're used to.
>>
>> I think if you asked 100 C++ programmers whether they thought
>> D was a complicated language, 99 of them would say no. If you
>> ask 100 Python programmers, 99 would probably say yes.
>
> Thanks for this very insightful post.
>
> Before reading this, I couldn't understand why people thought D
> was complex... I come from a strong C/C++ background, so to me
> D is like a breath of fresh air in terms of understandability,
> flexibility, and verbosity level. "Complex" certainly isn't
> what I'd think of when I think about D. But I suppose if
> someone is coming primarily from a Python background, D could
> certainly be considered quite a step up in perceived complexity!
I've done lots of C++ (though more in the earlier years), and I
have to disagree. I'd agree C++11 is more complicated than D,
but D is still complicated. I think I've programmed in enough
languages (from asm, Perl, Java,...) and in large enough projects
to have a good idea of what languages can be like.
I'll probably continue to stick it out and play with D for
personal projects because of the things I like and find
interesting, but professionally it's a no-go (pardon the pun).
Frankly, I think it is doomed to be a niche-use language. While
many more things were done right compared to C++, too many things
were done wrong and there doesn't seem to be interest in breaking
backward compatibility to excise them from D.
More information about the Digitalmars-d
mailing list