this post was submitted on 03 Jul 2023
152 points (96.9% liked)

Programmer Humor

19551 readers
1045 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] SJ_Zero@lemmy.fbxl.net 12 points 1 year ago (1 children)
[–] snowe@programming.dev 4 points 1 year ago (2 children)

I'm definitely missing something here. I'm terrible at rust and c++

[–] RustySharp@programming.dev 19 points 1 year ago (1 children)

The meme refers to the old adage "C lets you shoot yourself on the foot. C++ lets you shoot both feet and gives you a shotgun to do it" - referring to the how C allows you to perform memory-unsafe operations (causing corruption, or worse, security vulnerabilities), and C++'s complexity, potentially obscuring such unsafetyness.

Rust's memory safety tries to save you from doing (un)intentional bad stuff, by giving you compile-time errors. It's also the bane of everyone so used to C/++'s ability to just pass around and modify whatever memory they want.

[–] dukk@programming.dev 8 points 1 year ago

I’ve actually never heard that one before. I was specifically referencing this quote by the language’s creator, but I guess that one works too.

[–] o11c@programming.dev 4 points 1 year ago (1 children)

What you are missing, of course, is the Rc<Refcell<T>> that you have to stick everywhere to make a nontrivial Rust program. It's like monads in Haskell, parentheses in lisp, verbosity in Java, or warnings in C - they're the magic words you have to incant correctly to make things work in their weird paradigms.

[–] lavafroth@programming.dev 2 points 1 year ago* (last edited 1 year ago)

Or an Arc<Mutex<T>> if dealing with threads.