The worst programming language of all time [video](youtube.com)
youtube.com
The worst programming language of all time [video]
https://www.youtube.com/watch?v=7fGB-hjc2Gc
10 comments
There a lot of low information hate and minuscule effort content that farms impressions that is out there and even here being upvoted to front page, but this full feature length video is deliberate high information hate and it is awesome, not without it's drawbacks but a single man can only do so much.
This is like the best C++ tutorial that covers all those niche corner edge cases that I had to learn from a hundred different Even More Effective C++ books
This guy knows C++
9/10, -1 point for using gross AI generated pic
Well, essenitally a Rust fan explaining for two hours why he doesn't like C++.
rust is hardly mentioned.. javascript gets more attention.
he seems to be an expert and i think it's hilarious.
> rust is hardly mentioned
Until the fundamental quintessence in the final minutes, which puts everything said before it into perspective.
Until the fundamental quintessence in the final minutes, which puts everything said before it into perspective.
it's the obvious comparison to make, and he's still critical of rust. i think he wishes he had it years earlier. his frustration with c++ has a mass.. that comes from a whole lot of energy spent.
> it's the obvious comparison to make
Why do you think that? I think these two languages have pretty little in common besides a few (remote) syntactical similarities. Both languages have their merrits and weaknesses, but I don't think that one is able to fully replace the other. I would rather compare C++ to Ada or D.
Why do you think that? I think these two languages have pretty little in common besides a few (remote) syntactical similarities. Both languages have their merrits and weaknesses, but I don't think that one is able to fully replace the other. I would rather compare C++ to Ada or D.
That's a very unusual take. Rust (in its 1.0 form) was precisely made to replace C++, since the goal was to replace as much of Firefox's code as possible with it.
Also, if you cannot afford a GC, then languages like Ada and D are indeed decent alternatives... but D without a GC is very limited, Ada without SPARK is not as safe nor as ergonomic, and Ada with SPARK is very difficult to scale to larger projects.
Also, if you cannot afford a GC, then languages like Ada and D are indeed decent alternatives... but D without a GC is very limited, Ada without SPARK is not as safe nor as ergonomic, and Ada with SPARK is very difficult to scale to larger projects.
> Rust (in its 1.0 form) was precisely made to replace C++
And yet, the Rust we have today (which is a completely different language than what Hoare originally intended, long before its 1.0 form), requires a complete redesign and rewrite of a system written in C++. The "rewrite everything" dogma and the extreme complexity of the borrow checker were not part of Hoare's original language.
> but D without a GC is very limited
Why? It's pretty much the same object model as C++, and actually was D indeed designed to be a better C++ and a better C, even by an expert who had many years of experience in writing a commercial C++ compiler. There is no need for a GC if you migrate C++ code; you can still do manual memory management and incrementally switch to GC. Unlike Rust, which requires complex binding generators (like cxx or bindgen) to talk to C++, D has native C++ interoperability built into the compiler, so it indeed supports incremental migration.
> Ada without SPARK is not as safe nor as ergonomic, and Ada with SPARK is very difficult to scale to larger projects.
SPARK is usually used for the safety critical parts of a system, not a whole system. It is a subset of and more limited than Ada. But Ada by itself is already much safer than C++, because you can capture the semantics of a system much closer due to the more precise language features. It also has features which help to avoid dynamic allocations, bounds issues, etc. And even Ada is semantically closer to C++ than Rust.
And yet, the Rust we have today (which is a completely different language than what Hoare originally intended, long before its 1.0 form), requires a complete redesign and rewrite of a system written in C++. The "rewrite everything" dogma and the extreme complexity of the borrow checker were not part of Hoare's original language.
> but D without a GC is very limited
Why? It's pretty much the same object model as C++, and actually was D indeed designed to be a better C++ and a better C, even by an expert who had many years of experience in writing a commercial C++ compiler. There is no need for a GC if you migrate C++ code; you can still do manual memory management and incrementally switch to GC. Unlike Rust, which requires complex binding generators (like cxx or bindgen) to talk to C++, D has native C++ interoperability built into the compiler, so it indeed supports incremental migration.
> Ada without SPARK is not as safe nor as ergonomic, and Ada with SPARK is very difficult to scale to larger projects.
SPARK is usually used for the safety critical parts of a system, not a whole system. It is a subset of and more limited than Ada. But Ada by itself is already much safer than C++, because you can capture the semantics of a system much closer due to the more precise language features. It also has features which help to avoid dynamic allocations, bounds issues, etc. And even Ada is semantically closer to C++ than Rust.