The following outline is provided as an overview of and topical guide to Rust:
Rust is a multi-paradigm programming language emphasizing performance, memory safety, and concurrency. Rust was initially developed by Graydon Hoare starting in 2006, later sponsored and maintained by Mozilla Research starting in 2009, and first publicly released in 2010, with version 1.0 released in 2015. Rust is syntactically similar to C++ but guarantees memory safety without needing a garbage collector.1234
What type of language is Rust?
- Programming language – artificial language designed to communicate instructions to a computer
- Compiled language – implemented through compilers rather than interpreters5
- General-purpose programming language
- Multi-paradigm programming language – supports functional programming, imperative programming, concurrent programming.
- Statically typed programming language – type checking performed at compile time6
- Systems programming language – designed for low-level programming and operating system development7
- Memory-safe language – prevents common undefined behavior like dangling pointers and buffer overflows8
History of Rust
- Graydon Hoare – creator of Rust starting in 20069
- Mozilla – original sponsor and maintainer of Rust starting in 2009
- Cargo (software) – introduced as Rust’s official package manager and build system in 2014
- Rust Foundation – current steward of the Rust project since its inception in 2021
General Rust concepts
- Asynchronous I/O10
- Arrays and vectors
- Borrow checker11
- Closures12
- Concurrency13
- Crates and modules1415
- Enums in Rust1617
- Error handling18
- Functions19
- Generics20
- If statements and booleans21
- Iterators22
- Lifetimes
- Macros23
- Memory management24
- Ownership25
- Pattern matching26
- Serialization27
- Smart pointers28
- Strings29
- Tuples and structs30
- Traits31
- Type inference32
- Unit testing33
- Variables3435
Issues, limits
- Compile time performance36
- Ecosystem maturity
Rust toolchain
Compilers
- rustc – official Rust compiler
- LLVM – Rust backend uses LLVM for code generation
- mrustc – alternative Rust compiler written in C++37
- Cranelift – JIT compiler backend used in Wasmtime3839
Build and package management
Rust libraries and frameworks
- Rocket – web framework focused on type safety42
- Serde – framework for serialization and deserialization supporting JSON, YAML, TOML, and more.43
- Tokio – asynchronous runtime for Rust44
Testing and benchmarking
- Criterion.rs – benchmarking library4546
- Built-in unit testing with Cargo47
Notable projects written in Rust
Example source code
Rust publications
Books about Rust
- Klabnik, Steve; Nichols, Carol; Krycho, Chris (2026). The Rust Programming Language (3rd ed.). No Starch Press. ISBN 978-1-7185-0444-8. OCLC 1591968943.
- The Secrets of Rust: Tools – Bitfield Consulting
- Drysdale, David. Effective Rust: 35 specific ways to improve your Rust code. O'Reilly Media. ISBN 978-1-0981-5137-9. OCLC 1422579583.
- Gjengset, Jon (2022). Rust for Rustaceans: idiomatic programming for experienced developers. No Starch Press. ISBN 978-1-7185-0185-0. OCLC 1289300769.
- Blandy, Jim; Orendorff, Jason; Tindall, Leonora F.S. (2026). Programming Rust: fast, safe systems development (3rd ed.). O'Reilly Media. OCLC 1573515932.
- McNamara, Tim S. (2021). Rust in Action : systems programming concepts and techniques. Manning. ISBN 978-1-61729-455-6. OCLC 1300793337.
- Palmieri, Luca (2022). Zero to Production in Rust: an opinionated introduction to backend development. OCLC 1446252540.
Excerpted from: "The best Rust books for 2025, reviewed". Bitfield Consulting. July 5, 2024.
Rust dialects and related languages
- Dyon – rusty dynamically typed scripting language48
- Fe – inspired by Rust, smart contract language for the Ethereum blockchain49
- Move – originally developed for the Diem blockchain50
- Sway – Rust-based language for smart contracts51
Rust learning resources
- Getting started with Rust
- Official Rust Learn page
- W3Schools – Rust tutorials
- The Rust Programming Language (online book)
- Rust By Example
Competitive programming
- LeetCode – supports Rust submissions
- HackerRank – includes Rust challenges
- Codeforces – supports Rust in contests
See also
See also
- Outlines of other programming languages
References
References
- page, Clive Thompsonarchive. "How Rust went from a side project to the world's most-loved programming language". MIT Technology Review.
- "Introduction – Rust By Example". doc.rust-lang.org.
- "Introduction to Rust Programming Language". GeeksforGeeks. March 18, 2021.
- "CS 242: Memory safety in Rust". stanford-cs242.github.io.
- Shuklin, George (October 2, 2020). "My first insight into Rust type system".
- "Static – Rust By Example". doc.rust-lang.org.
- C, Carlo (April 28, 2025). "Rust Core: Key Concepts for Getting Started".
- "Rust memory safety explained".
- Cassel, David (September 10, 2023). "Graydon Hoare Remembers the Early Days of Rust".
- "Introduction – Asynchronous Programming in Rust". rust-lang.github.io.
- "References and Borrowing". doc.rust-lang.org.
- "Closures: Anonymous Functions that Capture Their Environment – The Rust Programming Language". rustwiki.org.
- "Concurrency – The Rust Programming Language". web.mit.edu.
- "Crates and Modules – The Rust Programming Language". web.mit.edu.
- "Crates – Rust By Example". doc.rust-lang.org.
- "Enums – Rust By Example". doc.rust-lang.org.
- "Rust – Enum". GeeksforGeeks. March 18, 2021.
- "Error Handling – The Rust Programming Language". web.mit.edu.
- "Functions – The Rust Programming Language". doc.rust-lang.org.
- "Generic Data Types – The Rust Programming Language". rustwiki.org.
- "Control Flow – The Rust Programming Language". doc.rust-lang.org.
- "Iterators – The Rust Programming Language". web.mit.edu.
- "Macros – The Rust Programming Language". doc.rust-lang.org.
- "Memory Management – Comprehensive Rust". google.github.io.
- "What is Ownership? – The Rust Programming Language". doc.rust-lang.org.
- "Rust Pattern Matching (With Examples)". www.programiz.com.
- "Serialize in serde – Rust". docs.rs.
- "Smart Pointers – The Rust Programming Language". doc.rust-lang.org.
- "Strings – Rust By Example". doc.rust-lang.org.
- "Defining and Instantiating Structs – The Rust Programming Language". doc.rust-lang.org.
- "Traits: Defining Shared Behavior – The Rust Programming Language". doc.rust-lang.org.
- "Type inference – Rust Compiler Development Guide". rustc-dev-guide.rust-lang.org.
- "Unit testing – Rust By Example". rustwiki.org.
- "Variables and Mutability – The Rust Programming Language". doc.rust-lang.org.
- "Variables in Rust". GeeksforGeeks. March 1, 2021.
- "Compile Times – The Rust Performance Book". nnethercote.github.io.
- "thepowersgang/mrustc". November 5, 2025 – via GitHub.
- "Cranelift". cranelift.dev.
- "rust-lang/rustc_codegen_cranelift". November 6, 2025 – via GitHub.
- "Introduction – The Cargo Book". doc.rust-lang.org.
- "The Rust community's crate registry". crates.io.
- "Rocket – Simple, Fast, Type-Safe Web Framework for Rust". rocket.rs.
- "Overview · Serde". serde.rs.
- "Tokio – An asynchronous Rust runtime". tokio.rs.
- "bheisler/criterion.rs". November 6, 2025 – via GitHub.
- "criterion – Rust". docs.rs.
- "Tests – The Cargo Book". doc.rust-lang.org.
- "PistonDevelopers/dyon". October 23, 2025 – via GitHub.
- "Fe – A next generation, statically typed, future-proof smart contract language for the Ethereum Virtual Machine". fe-lang.org.
- "Introduction – The Move Book". move-language.github.io.
- "The Sway Programming Language". fuellabs.github.io.