this post was submitted on 30 Nov 2023
-2 points (40.0% liked)
C++
1763 readers
1 users here now
The center for all discussion and news regarding C++.
Rules
- Respect instance rules.
- Don't be a jerk.
- Please keep all posts related to C++.
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Well then you're better off with Rust! I have heard the same thing about Java, C# and even scripting languages like Python. It suits you and the project? Go for it!
But the raw pointer in C (and thus C++) is the absolute power, and that's about it. That is how computers are built, that is how compilers work, that's how about anything works under the hood. Like it or not.
You dont have to like it, I understand that completely.
Absolute power doesn't have to come with unnecessary risk everywhere. There's nothing you can do in C++ that can't also be done in Rust, the difference is that Rust keeps it safe by default and you need to go out of your way to say "Let me do this incredibly risky thing inside this specific block of code" before it lets you do anything that has any risk of leading to undefined behavior and crashes.
And it turns out, you can have all the performance advantages of C++ while almost never needing to do anything unsafe. The average Rust developer will never use the
unsafe
keyword in their entire career but will still write code that outperforms the average C++ developer.Yeah, I have been a long for some time and that was the speech for Java, C# etc too you know.
Real like isn't usually coding a new program with unsafe pointers for speed, it's usually a 20 y old codebase in C/C++ that interferes with third parties in C, C++, C# and two distinct versions of Java, incompatible between each other.
So maybe Rust is the new deal, like Python was supposed to be and Java before that, we'll see...
Python never claimed to be the new deal, neither did java. At least not in the "c++ is now obsolete" way.
Rust definitely can replace c++, the major reason for not doing so right now is the legacy stuff, but as rust / c++ interop improves I think we will see more companies moving away from c++.
Java was force fed down everyone's throats being the new genius language to make all other languages obsolete. For years and years.
Python way less but there were lots of "why not just do it in Python, it's better and you develop faster!!" Look at XYZ they use Python!!