"Nick Sabalausky" <a@a.a> wrote in message 
news:j51m0l$2prg$1...@digitalmars.com...
> "Xavier" <x...@nospam.net> wrote in message 
> news:j51jsp$2lln$1...@digitalmars.com...
>>
>> "Jonathan M Davis" <jmdavisp...@gmx.com> wrote in message 
>> news:mailman.2921.1316239886.14074.digitalmar...@puremagic.com...
>>
>>> I definitely prefer D to C++, but I honestly think that your hatred 
>>> of C++
>>> (which you have expressed on several occasions) clouds your judgement 
>>> on the
>>> matter. Many, many programmers are fine with C++, and while many 
>>> programmers
>>> may like C++ to be improved or would like a language that's similar 
>>> to C++ but
>>> without as many warts, that doesn't mean that they're going to be in 
>>> a hurry
>>> to try out D. And many, many of the people who have problems with C++ 
>>> use
>>> languages such as C# and Java instead and are fine with that. D has a 
>>> major
>>> uphill battle to truly become as relevant as any of those languages 
>>> are
>>> regardless of how much better it may be.
>>>
>>
>> There is something wrong with that last sentence. Especially since in 
>> the preceding material that I snipped, you noted that the compilers 
>> for D are not up to snuff. You seem to be noting its deficiencies but 
>> wanting it to be "better" somehow, maybe for some of it's "neat 
>> features"? Perhaps D just has to grow up before it can battle 
>> anywhere, let alone on hills?
>
> In both this and your other post, you're conflating the notions of the 
> "language quality" vs "implementation quality". The two are not the 
> same.

They are not necessarily orthogonal though either. Surely you are just 
focusing on design and maybe semantics and maybe even syntax, but those 
aren't the only criteria and of those things, C++ and D have more in 
common than they have not in common. For instance, if implementation 
quality is bad, maybe the language's implementability is bad. If so, then 
it's a language "quality" issue. Now you can argue that C++ is much worse 
in regards to implementability, but that doesn't really say anything more 
than something like "D is better than the POS that C++ is". To be 
markedly different from C++, D would have to be thought of as being in a 
different category than "which is the better POS?", but of course it 
cannot, for it comes from the same family, "one generation newer than 
C++".

> Now, yes, D effectively has one implementation (the DMD frontend), but 
> even considering that, the notions are still worth separating:
>
> For one thing, implementation quality is much easier to improve than 
> language quality.

That may be true if one had a language that indeed was at some superior 
design level, but D is not at that level. It's at the same level as C++ 
is, so there is major room for improvement (i.e., requires a different 
language) in a number of areas.

> An implementation deficiency can always be fixed. But a language 
> deficiency can usually only be fixed if it's an additive change, which: 
> #1 Rules out all non-additive improvements, and #2 Often forces an 
> inferior solution to be used, creating language cruft.
>
> Secondly, it *IS* possible, and not at all uncommon, for a language 
> deficiency to be MORE severe than an implementation deficiency. For 
> example, updating header files and keeping them in-sync with the 
> implementation is far more time consuming than working around any of 
> the bugs in D's module system. Another: Certain details about C++ 
> *force* the language to be slow-to-compile. That CANNOT be improved. As 
> a consequence, many C++ projects take hours to compile. Unless you 
> shell out the $$$ for a distributed-compilation cluster. Either way, 
> that's much more costly than dealing with any D bug I've come across in 
> the last year (yes, there were some severe ones in the past, but those 
> are now fixed).

So large scale software development is the only concern? Seems rather 
contrived point. C'mon now, a lot of software is NOT that. And notice too 
that for software development that is not that, "intellisense" 
dramatically reduces the number of times a programmer hits the compile 
button. That one thing is not as big an issue and certainly it pales in 
comparison to other language design flaws, which C++ and D both share.

>
> So no, it's NOT a contradiction that D can be a better language while 
> still having implementation issues.

Anyway, you can talk until you are blue in the face, but you can't 
convince me that D and C++ aren't in the same category (as far as 
language design goes). You can call C++ a POS, but then, to me, that 
means that at best, D is just a better POS. But not to end this post on a 
bad note/word, I admire C++ a little bit. I certainly don't hate it. I 
can deal with it's shortcomings for now, so I could probably deal with 
D's also, but if I was thinking about jumping ship, I'd be swimming 
toward an island and not another ship. 


Reply via email to