Programming Rust: Fast, Safe Systems Development
<div><p>Rust is a new systems programming language that combines the performance and low-level control of C and C++ with memory safety and thread safety. Rust€s modern, flexible types ensure your program is free of null pointer dereferences, double frees, dangling pointers, and similar bugs, all at compile time, without runtime overhead. In multi-threaded code, Rust catches data races at compile time, making concurrency much easier to use.</p><p>Written by two experienced systems programmers, this book explains how Rust manages to bridge the gap between performance and safety, and how you can take advantage of it. Topics include:</p><ul><li>How Rust represents values in memory (with diagrams)</li><li>Complete explanations of ownership, moves, borrows, and lifetimes</li><li>Cargo, rustdoc, unit tests, and how to publish your code on crates.io, Rust€s public package repository</li><li>High-level features like generic code, closures, collections, and iterators that make Rust productive and flexible</li><li>Concurrency in Rust: threads, mutexes, channels, and atomics, all much safer to use than in C or C++</li><li>Unsafe code, and how to preserve the integrity of ordinary code that uses it</li><li>Extended examples illustrating how pieces of the language fit together</li></ul></div>