@CleanCut in the sibling thread gives the best metaphor for Rust I’ve seen so far
(quoting Effective Modern C++ by Scott Meyers)
"The interaction among perfect-forwarding constructors and compiler-generated copy and move operations develops even more wrinkles when inheritance enters the picture."
This is the kind of sentence that will make me run away screaming. Rust doesn’t have any of those features, gets by fine without them, and thus avoids such bizarre interactions.
“Keegan” on his blog, main is usually a function
The quote content from the previous post:
That RFC would break too much code to justify implementing it in Rust 3.0. @SimonSapin
Quoted from https://air.mozilla.org/game-developement-in-rust/ , in the wrap-up:
[the] unsafe [keyword] is your friend. He’s not your friend like you’d invite to your sister’s wedding, but he’s the kind of friend who lives in a bunker in the wilderness has has 37 guns and if you need something blown up he is there for you.
Did the presenter actually say “has has”?
Spoken at 38:35 in the video.
This may sound intuitively plausible, but turns out to be extremely subtle.
Ralf Jung on Rust safety in “RustBelt: Securing the Foundations of the Rust Programming Language”.
Link for @sanxiyn’s quote: RustBelt: Securing the Foundations of the Rust Programming Language (page 21 of the PDF, last paragraph under point 5.2).
That turned out to be quite the interesting read about formalising the lifetimes of Rust, even if the maths went over my head…
Good farmers use their bare hands, average farmers use a combine harvester.
sin2pifx’s sarcastic response to “Good programmers write C, average programmers write Rust”.
From #rust-beginners:
<Xion> As usual, the cowbell method works.
<Xion> (“If you have a problem with lifetimes, the best solution is MORE LIFETIMES”)
I think this quote from the “revisiting modules” post exemplifies something that I think is missing from, or at least not nearly common enough in, the C++ community:
As Quote of the Week material, I guess it’s a bit long and context-dependent. Here’s a slightly edited version:
Or the extended version: “Every problem with lifetimes can be solved by adding more lifetimes, except too many lifetimes”.
why<'a, 'b, 'c, 'd, 'e, 'f, 'g, 'h> would<'cntx, 'layout, 'script, 'ptr, 'context> that<'cntx, 'arena, 'static, 'sittac> be<'x, 'y, 'a, 'b, 'c, 'cntx', 'ctnx, 'i> 'a problem<'d>?
< Ralith> don’t drink and unsafe D:
From /r/rust:
Nah, it’s not you, it’s the borrow checker.
Honey, it’s not you, it’s &mut me.
You can borrow me, and you can change me, but you can’t own me.
“Honey, it’s not you, it’s &mut me”
- u/ybx, complaining about the borrow checker on r/rust
(https://www.reddit.com/r/rust/comments/6s8vhg/how_do_i_do_if_let_somex_selfbla_selfdobla/dlb17qn/)
Sometimes I leave ; out on purpose just to see the pretty compiler errors.
once you can walk barefoot (C), it’s easy to learn to walk with shoes (go) but it will take time to learn to ride a bike (rust)
Nominating my own crimes against rhymes:
You better watch out
You better not cry
Better not pout
I’m telling you why
Rust is coming to townHe’s making a
Vec<_>
He’s sharing it twice
Can’t modify it while the shares are alive
The borrow checker is niceIt knows when you own
It knows when you share
It knows if you’remut
So don’t useunsafe
for goodness sake!O! You better watch out!
You better not race
Better not overflow
I’m telling you why
Rust is coming to town
Rust is coming to town