The Algebra of Loans in Rust, https://nadrieril.github.io/blog/2025/12/21/the-algebra-of-loans-in-rust.html.

An excellent article by Nadri about discussions happening around teaching the Rust borrow-checker to understand more things than just “shared borrow”/“mutable borrow”. Let's discover `&own T`, `&pin T`, `&pin mut T`, `&pin own T` and `&uninit`.

#RustLang #BorrowChecker

The Algebra of Loans in Rust

The heart of Rust borrow-checking is this: when a borrow is taken, and until it expires, access to the borrowed place is restricted. For example you may not read from a place while it is mutably borrowed.

Nadri’s musings
Don't Forget to BORROW your CHORDS!

YouTube

Reads like an LLM-generated post 🧐, but contains a good summary of the issues & their solutions:

“How To Avoid Fighting Rust Borrow Checker”, ‘quoteall’ (https://qouteall.fun/qouteall-blog/2025/How%20to%20Avoid%20Fighting%20Rust%20Borrow%20Checker).

Via Lobsters: https://lobste.rs/s/cnhjj2/how_avoid_fighting_rust_borrow_checker

#Rust #Programming #BorrowChecker #MemorySafety

How to Avoid Fighting Rust Borrow Checker | qouteall notes

The 3 important facts in Rust:

The borrowchecker is what I like the least about Rust

Oh, the horror! 😱 A programmer doesn't adore Rust's beloved borrow checker—the very feature that keeps us from diving headfirst into memory chaos! 🚀 Apparently, some folks just can't handle the thrill of safe, speedy code without the comforting presence of runtime garbage collection. 🤦‍♂️
https://viralinstruction.com/posts/borrowchecker/ #programming #Rust #memorymanagement #borrowchecker #codequality #developerhumor #HackerNews #ngated
The borrowchecker is what I like the least about Rust

The borrowchecker is what I like the least about Rust

So, this is an interesting thing from the Browser Company, dia. It did generate this article based on my blog and believe me, it does sound like me.

Scary, right?
#AI #ArtificialIntelligence #Coding #RustLang #ProgrammingHumor #DevLife #Productivity #TechTrends #Automation #LearningToCode #Debugging #BorrowChecker #TechReflections #selftaught
(even the tags are ai generated!)

I did, during my previously mentioned workshop, do one thing to offend #Rust’s #borrowchecker. I was implementing an Account struct that had a current balance and a Vec containing a history of balances. This was using #PyO3 so there are some special types. Because of inheritance, I have self_ instead of self. Here’s the bad thing I said:

self_.history.push(self_.as_super().balance);

@algo_luca had to explain it to me. He didn’t even need to think about it. He instantly knew what was wrong. Now I am enlightened. I won’t make this particular kind of mistake again.

Of course the mistake is that I was trying to use a mutable reference (so I could push to history) and anything else at the same time.

I spent the last 2 hours dealing with C++ value categories in templated code.
Could someone please kill me?

Most people focus on the #BorrowChecker when they compare #RustLang and #CPP, but I feel that it should also be highlighted how much more intuitive (and a lot saner) it is to deal with moving/copying/referencing in Rust.