Hacker News new | ask | show | jobs
by pjmlp 884 days ago
Before Java was announced to the world, DDJ had an issue about successor programing languages to C and C++, they were Actor (Smalltalk inspired), C@+ (talk about naming things), Eiffel, and a couple others I cannot remember.

None of them survived, instead replaced by the "All must be Java" hype of the 2000's.

While we keep trying to get an established successor to C and C++, 30 years later.

1 comments

It is not that we can't but we won't. Rust and D are two of the best shots so far for replacing C++, and based on the TIOBE 2024 Index, they are on the 19th and 21st place respectively. But time will tell whether any of these promising languages will eventually succeed, and become C++ successor that is currently ranked 3rd. Personally I'd love D to success thus we can replace a single language for the cumbersome and the mess of the C++ and Python programming languages duality in data science and machine learning implementation for examples.
And still, as long as Rust depends on GCC and LLVM for its reference implementations, that alone will be enough to keep C++ around.

Same applies to D, as dmd's optimizer isn't as rich, nor its backend supports as many CPUs, as do ldc and gdc, built on top of LLVM and GCC respectively.

It's a bit rich complaining on D dmd optimization when D compilation speed performance is much faster than both C++ and Rust. The backend supports could be better but I'm afraid it's a catch-22 situation until D is more widely used. Like I mentioned before for Data Science and Machine Learning eco-system, system programmers (B-type programmer) generally won't replace C++ not that they can't, while on the other hand analyst programmers (A-type) are avoiding C++ like a plague and prefer user friendly programming languages for examples Python and Matlab [1].

[1] There are two types of data scientists — and two types of problems to solve:

https://medium.com/@jamesdensmore/there-are-two-types-of-dat...