this post was submitted on 05 Jul 2025
270 points (98.9% liked)

Programmer Humor

24790 readers
442 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 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] itslilith@lemmy.blahaj.zone 4 points 11 hours ago (1 children)

The borrow checker makes things a bit more complicated to get running, definitely takes some getting used to when you come from a non-memory safe language. But the compiler is really helpful throughout almost all mistakes, often directly providing an explanation and a suggested fix. One of my favorites programming experiences so far

[–] qaz@lemmy.world 4 points 10 hours ago* (last edited 10 hours ago) (1 children)

...definitely takes some getting used to when you come from a non-memory safe language...

I actually think it's more like the opposite. The compiler takes the normal rules you apply to avoid issues with a non-memory safe language like C/C++ and enforces them explicitly where memory safe languages don't have those rules at all. I think lifetimes are much more confusing if you've never dealt with a user after free and usually let GC deal with it.

Also yes the compiler warnings and errors are amazing, the difference between rustc and gcc is night and day.

[–] Lightfire228@pawb.social 2 points 3 hours ago* (last edited 3 hours ago)

I can confirm, I've never used a non memory managed language, and the Rust borrow checker is a massive kick in the teeth

But, the more i consider it from the perspective of memory, and pointers, the borrow checker makes a lot of sense

Especially when storing references inside structs, and how mutability affects references

I actually figured out i could fix a re-mutable borrow error by performing the two mutable operations in separate for loops