Top Qs
Timeline
Chat
Perspective
Outline of the Rust programming language
Overview of and topical guide to Rust From Wikipedia, the free encyclopedia
Remove ads
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 requiring a garbage collector.[1][2][3][4]
Remove ads
What type of language is Rust?
- Programming language — artificial language designed to communicate instructions to a computer
- Compiled language — implemented through compilers rather than interpreters[5]
- General-purpose programming language
- Multi-paradigm programming language — supports functional programming, imperative programming, concurrent programming.
- Statically typed programming language — type checking performed at compile time[6]
- Systems programming language — designed for low-level programming and operating system development[7]
- Memory-safe language — prevents common undefined behavior like dangling pointers and buffer overflows[8]
Remove ads
History of Rust
- Graydon Hoare — creator of Rust starting in 2006[9]
- 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/O[10]
- Arrays and vectors
- Borrow checker[11]
- Closures[12]
- Concurrency[13]
- Crates and modules[14][15]
- Enums in Rust[16][17]
- Error handling[18]
- Functions[19]
- Generics[20]
- If statements and booleans[21]
- Iterators[22]
- Lifetimes
- Macros[23]
- Memory management[24]
- Ownership[25]
- Pattern matching[26]
- Serialization[27]
- Smart pointers[28]
- Strings[29]
- Tuples and structs[30]
- Traits[31]
- Type inference[32]
- Variables[33][34]
- Unit testing[35]
Issues / Limitations
- Compile time performance[36]
- Ecosystem maturity
Rust toolchain
Compilers
Build and package management
Rust libraries and frameworks
Testing and benchmarking
- Criterion.rs — benchmarking library[45][46]
- Built-in unit testing with Cargo[47]
Remove ads
Notable projects written in Rust
Example source code
Rust publications
Books about Rust
- The Rust Programming Language — Steve Klabnik and Carol Nichols
- The Secrets of Rust: Tools — Bitfield Consulting
- Effective Rust — David Drysdale
- Rust for Rustaceans — Jon Gjengset
- Programming Rust — Jim Blandy, Jason Orendorff, and Leonora Tindall
- Rust in Action — Tim McNamara
- Zero to Production in Rust — Luca Palmieri[48]
Rust dialects and related languages
- Dyon – rusty dynamically typed scripting language[49]
- Fe — inspired by Rust, smart contract language for the Ethereum blockchain[50]
- Move — originally developed for the Diem blockchain[51]
- Sway — Rust-based language for smart contracts[52]
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
Wikibooks has a book on the topic of: Rust for the Novice Programmer/Introduction
External links
References
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads