Real D

Doigt labog at outlook.com
Sun Apr 14 16:02:58 UTC 2024


On Saturday, 13 April 2024 at 13:55:50 UTC, Marconi wrote:
> The fact that C still being used today is a clear sign that all 
> language creators failed badly in not seeing the advantages of 
> C, focused only on the disadvantages and exaggerated creating 
> features that no one cares, creating too much possibilities of 
> doing the same thing, getting only learning difficulties.

This is fallacious reasoning. You can find out if an argument is 
fallacious by reducing the reasoning to its atomic components or 
by switching out the subjects of the argument. In order to remove 
the irrationality once and for all, I have applied your exact 
reasoning 3 times for demonstrating my point:

The fact that bicycles are still being used today is a clear sign 
that car manufacturers failed badly in not seeing the advantages 
of bicycles, focused only on the disadvantages and exaggerated 
creating features that no one cares, creating too many 
possibilities of doing the same thing, getting only learning 
difficulties.

The fact that margarine is still being used today is a clear sign 
that butter producers failed badly in not seeing the advantages 
of margarine, focused only on the disadvantages and exaggerated 
taste and health benefits that no one cares, creating too many 
possibilities of doing the same thing, getting only learning 
difficulties.

The fact that dictatorships still exist today is a clear sign 
that democracies failed badly in not seeing the advantages of 
dictatorship, focused only on the disadvantages and exaggerated 
individual rights and privileges one cares, creating too many 
possibilities of doing the same thing, getting only learning 
difficulties.

correlation != causation

> What D should be?
> C with fat pointers, no header files and a big OO standard 
> library.
> That's it. A better C. A new C. 90% C + 5% Cpp + 5% Java.

It already exists, it's called BetterC. You could also just 
abstain yourself from using the features you don't like without 
using BetterC that way you can still use the libraries other 
people wrote. Alternatively, you could make your own language. 
That's what the creators of C2 and C3 did. Maybe you could call 
it C4, I'm sure it would explode in popularity with a name like 
that. Anyways nobody is going to downgrade D just because you 
don't like extra features that you don't even have to use.

> C++ has the advantage of being compatible, but didn't solve the 
> main pointer's problem.
> Java is almost this, but VM was a terrible decision (great only 
> for marketing) and GC is good for bad programmers (sorry).
> Dlang displease C/C++ programmers for having GC and didn't get 
> any of Java programmers.

D is also highly compatible with C, more so than most languages 
if not all of them. It's even able to interface with most other 
languages directly (like C or C++) or with some tinkering with 
the advanced features of D (like in the case of R and Rust).

D doesn't displease C and C++ programmers for having a GC. The GC 
and the runtime are optional after all and writing your own stuff 
without using the included batteries is the pleasure of most 
hardcore fans of those two languages. C and C++ programmers 
dislike D for the same reason they dislike all other languages: D 
is neither C nor C++. C programmers will only use C and C++ 
programmers will only use C++. They are not interested in 
learning any other language.

GC is good for all programmers, talented and terrible. It saves 
time for the good ones and it saves the bad ones from writing a 
time bomb. And even the good ones can make mistakes. Memory 
allocation errors are not always obvious and may go unnoticed for 
a long time. You're not only required to be good and diligent, 
you're required to be perfect. You may not commit one single 
mistake. Nobody's perfect and I'm sure you are far from perfect 
yourself seeing the level of logic in your reasoning; I'm afraid 
of what it looks like in your code.



More information about the Digitalmars-d mailing list