Why don't other programming languages have ranges?
re at tard.com.invalid
Mon Jul 26 06:41:28 PDT 2010
Sun, 25 Jul 2010 20:21:05 -0500, Andrei Alexandrescu wrote:
> On 07/25/2010 04:54 PM, bearophile wrote:
>> Andrei Alexandrescu:
>>> In my humble opinion, the design of Java, C#, and Go is proof that
>>> their authors didn't get the STL. Otherwise, those languages would be
>>> very different.
>> I don't believe you. Among the designers of Java, C# and Go there are
>> people that are both experts and smart. C# designers have shown to be
>> sometimes smarter than D designers. So I think some of them 'get the
>> STL' and understand its advantages, but despite this in the universe
>> they have found some other reasons to refuse it. I think they were
>> unwilling to pay the large price in language complexity,
>> bug-prone-ness, code bloat and compilation speed that C++ and D are
>> willing to pay.
> But then their containers and algorithms are markedly inferior to STL's.
> They are toxic to the programmers who have only been exposed to them. So
> Java and C# got STL and decided to not go with it, I'm sure they would
> have at least gotten a few good bits from it. But no - the entire e.g.
> Java container library is parallel to everything STL stands for.
I think the Java/C# developers gave up X % of the execution speed to
avoid hard crashes (exceptions instead of segfaults) AND to make it
possible for ordinary people to develop applications. Even Java was too
complex so the less bright people made PHP for the idiot part of the
community (I'm not saying all PHP users are idiots, but if you're an
idiot, you can't develop in Java or C++, but you can fluently write PHP).
It's a sad fact that not everyone is as intelligent as A. Alexandrescu or
W. Bright. A PHP website for a local fishing club doesn't need super
efficient code. Why? There are maybe 2..4 visitors daily and the only
interactive part on the page is a feedback form. A typical C/C++/D
program written by a mediocre developer crashes every 15..60 minutes
because of bug prone low level code. That's the reason why there are
"inferior" languages. PHP doesn't crash. You just get an interactive
error message. And you can fix the bug in 1..5 minutes without restarting
the server. A novice coder is willing to sacrifice 99.9% of performance
to get this feature.
More information about the Digitalmars-d