this post was submitted on 13 Mar 2025
671 points (100.0% liked)
linuxmemes
23866 readers
1152 users here now
Hint: :q!
Sister communities:
Community rules (click to expand)
1. Follow the site-wide rules
- Instance-wide TOS: https://legal.lemmy.world/tos/
- Lemmy code of conduct: https://join-lemmy.org/docs/code_of_conduct.html
2. Be civil
3. Post Linux-related content
sudo
in Windows.4. No recent reposts
5. ๐ฌ๐ง Language/ัะทัะบ/Sprache
6. (NEW!) Regarding public figures
We all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations.Please report posts and comments that break these rules!
Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
The definition of "a memory safe programming language" is not in debate at all in the programming community. I have no idea why you're trying to change it.
This is incredibly arrogant, and, tbh, ignorant.
You missed the point of the examples: those aren't necessarily "easy mistakes" to make and of course a UAF is easy to spot in a 4 line program, the point is that there is no language construct in place to protect from these trivial memory safety issues. With respect to the "obviousness" of the
std::string
mistake, if you instead consider an opaque interface that requires aconst char*
as an input, you have no idea if it is going to try to reference of that pointer or not past the lifetime of thestd::string
. If you can't see past the simplicity of an example to the bigger picture that's not on me.Yes, my mistake. I'm sorry.
You've willingly ignored the remaining part of that context, where I explicitly admitted problems in common usage. It was not my intention to come across as arrogant.
Depending on what you mean by "language constructs": there are, e.g. RAII or smart pointers. But they aren't enforced. So it's correct to say that C++ is inherently memory unsafe due to the lack of such enforcements. The discussions here changed my opinion about that.