How does Rust return values, and does it make any difference to us programmers?
When is the linear scan Two Sum solution faster than a map? What if we use AVX-512 instructions?
In Rust, what is the performance cost of using sync::Once after the initial setup?
In Rust, how does using a different primitive type (u8, i32, u64, …) change the generated assembly?
Assembly: In all the world of the programmer, there is no more important output.
Can we make a Rust program that’s as small as it’s assembler equivalent?
Thanks to Address Space Layout Randomization you can use the address of a stack variable as a zero-cost random number.
Rust avoids memory copies by optimizing return value placement.
On x86 it doesn’t really matter what sync::atomic::Ordering you choose.
Safety is boring, let’s do pointer arithmetic.
Is your Rust program CPU bound? Here are the very first things you can do on Linux.
An adventure in CPU out-of-order instruction execution.
Rust’s traits are a single concept that unifies interfaces, abstract classes, mix-ins, operator overloading, contraints on generics, and more.
It will take longer to learn than most languages, the standard library is small so you’ll need dependencies, and a lot of behavior is in traits.