Programming Language References

Rust

Recommended Books
The Rust Programming Language
- This is generally the first point of learning for anyone interested in learning Rust.
- Covers topics ranging from basics to some of the useful advances feature of the languare.
- Contains projects to get an hands-on experience with the language and also shows how different error are flagged by the compiler and how to fix them.
Rust Atomics and Locks Low-Level Concurrency in Practice
- A complete guide to concurrency primitives available in Rust and how they work internally.
- Can be a good read for anyone interested about learning concurrent programming in general.
- Covers some OS and ISA specific concepts which needs to be kept in mind when writing multi-threaded programs.
The Rust Performance Book
- Provides a quick and advanced understanding of cost of using different common Rust language constructs.
- Covers a breadth of suggestions and best practices for writing high performance Rust code.
- Contains example links to git commits with respective performance improvement changes in public Rust repos (eg: Using buffered write to reduce number of syscalls).
Asynchronous Programming in Rust
- Talks about how async programming works in general and how Rust implements it.
- Also contains an example on how to build an async executor.

Other references
Rust container cheat sheet by Raph Levien
- A great visualization of how different container types are structure in memory
Rust to Assembly: Understanding the Inner Workings of Rust Rust blog by EventHelix
- Provides an Assembly level walk-through of different Rust language constructs.
- Talks about how the Rust compiler optimizes different code snippets and also provides suggestions to improve code performance.