If you have a constant expression like 1 + 2 in your code you can evaluate it at compile time once and avoid computing it at runtime. You can do that with control flow and much more complex language constructs in C++. If you want to know more about that look into C++ template meta programming, constexpr, and constval.
It’s easy to build a well-designed language when you don’t have to work around the mistakes of the past that were too difficult to solve then and too deeply entrenched to change now.
C++ has pretty much no compile-time checks, while Rust’s overengineered syntax allows it’s compiler to catch vast majority of your everyday errors during compilation.
The whole point of C++ is to graft Object Oriented Programming into C like some Frankenstein’s monster because OOP was the big hype.
C++ being performant is mostly a side effect of it being based on a language created when programs were still punched into paper cards.
That was the point 20 years ago. These days it is pivoting to compile time functional programming
What does that mean ?
If you have a constant expression like
1 + 2in your code you can evaluate it at compile time once and avoid computing it at runtime. You can do that with control flow and much more complex language constructs in C++. If you want to know more about that look into C++ template meta programming, constexpr, and constval.Or don’t look into those things if you wish to remain sane
yeah, zig and rust have the same concepts but much better thought and structed
It’s easy to build a well-designed language when you don’t have to work around the mistakes of the past that were too difficult to solve then and too deeply entrenched to change now.
yes, thats why I dont bother finnishing projects
To be fair, I never fully understood why programming projects have to be native Finlanders, in the end.
Translation: “We’ve made the preprocessor a first-class language feature!”
(jk, don’t kill me)
it means rust is cool as fuck
aren’t they talking about C++ ?
C++ has pretty much no compile-time checks, while Rust’s overengineered syntax allows it’s compiler to catch vast majority of your everyday errors during compilation.
It doesn’t eliminate logic bugs. I’d argue these are way more relevant in day to day programming.