• 1. Introduction
  • 2. About the Authors
  • 3. Why Rust?
    • 3.1. Understanding Over Guesswork
    • 3.2. An Alternative Introduction to Rust
    • 3.3. Learning Rust
    • 3.4. Rust and CSV Parsing
  • 4. Ownership
    • 4.1. Where Rust Really Shines
    • 4.2. The Problem With Single-threaded Shared Mutability
    • 4.3. Strategies for Solving 'cannot move out of' Borrowing Errors
    • 4.4. Interior Mutability In Rust
    • 4.5. Wrapper Types in Rust: Choosing Your Guarantees
  • 5. Concurrency
    • 5.1. Fearless Concurrency
    • 5.2. How Rust Achieves Thread Safety
    • 5.3. Rayon: Data Parallelism in Rust
  • 6. Traits
    • 6.1. Abstraction Without Overhead
    • 6.2. All About Trait Objects
  • 7. The Rust Language
    • 7.1. The Many Kinds of Code Reuse in Rust
    • 7.2. Mixing Matching, Mutation, and Moves
    • 7.3. Reading Rust Function Signatures
    • 7.4. Finding Closure in Rust
    • 7.5. Rust's Built-in Traits, the When, How & Why
    • 7.6. Myths and Legends About Integer Overflow
  • 8. Rust in Practice
    • 8.1. Effectively Using Iterators
  • 9. Unsafe Rust
    • 9.1. What Does Rust's unsafe Mean
    • 9.2. Memory Leaks are Memory Safe
  • 10. The Rust Toolbox
  • 11. Async I/O
  • 12. Rust Culture

About the Authors

Aaron Turon

Alexis Beingessner

Andre Bogus

Andrew Hobden

Felix S. Klock II

Herman J. Radtke III

Huon Wilson

Manish Goregaokar

Rust Anthology Editors

Rust Anthology is collaboratively edited by these fine folks: TODO