Rust (programming language)

Rust
Paradigms
DeveloperThe Rust Team
First appearedJanuary 19, 2012 (2012-01-19)
Stable release
1.90.0[1]  / September 18, 2025 (September 18, 2025)
Typing discipline
  • Affine
  • inferred
  • nominal
  • static
  • strong
Implementation languageOCaml (2006–2011)
Rust (2012–present)
PlatformCross-platform[note 1]
OSCross-platform[note 2]
LicenseMIT, Apache 2.0[note 3]
Filename extensions.rs, .rlib
Websiterust-lang.org
Influenced by
Influenced

Rust is a general-purpose programming language. It is noted for its emphasis on performance, type safety, concurrency, and memory safety.

Rust supports multiple programming paradigms. It was influenced by ideas from functional programming, including immutability, higher-order functions, algebraic data types, and pattern matching. It also supports object-oriented programming via structs, enums, traits, and methods. Rust is noted for enforcing memory safety (i.e., that all references point to valid memory) without a conventional garbage collector; instead, memory safety errors and data races are prevented by the "borrow checker", which tracks the object lifetime of references at compile time.

Software developer Graydon Hoare created Rust in 2006 while working at Mozilla Research, which officially sponsored the project in 2009. The first stable release, Rust 1.0, was published in May 2015. Following a layoff of Mozilla employees in August 2020, four other companies joined Mozilla in sponsoring Rust through the creation of the Rust Foundation in February 2021.

Rust has been adopted by many software projects, especially web services and system software, and is the first language other than C and assembly to be supported in the development of the Linux kernel. It has been studied academically and has a growing community of developers.

  1. ^ "Announcing Rust 1.90.0". 2025-09-18. Retrieved 2025-09-18.
  2. ^ a b "Platform Support". The rustc book. Archived from the original on 2022-06-30. Retrieved 2022-06-27.
  3. ^ "Copyright". GitHub. The Rust Programming Language. 2022-10-19. Archived from the original on 2023-07-22. Retrieved 2022-10-19.
  4. ^ Cite error: The named reference licenses was invoked but never defined (see the help page).
  5. ^ "Uniqueness Types". Rust Blog. Archived from the original on 2016-09-15. Retrieved 2016-10-08. Those of you familiar with the Elm style may recognize that the updated --explain messages draw heavy inspiration from the Elm approach.
  6. ^ Cite error: The named reference influences was invoked but never defined (see the help page).
  7. ^ "Uniqueness Types". Idris 1.3.3 documentation. Archived from the original on 2018-11-21. Retrieved 2022-07-14. They are inspired by ... ownership types and borrowed pointers in the Rust programming language.
  8. ^ Cite error: The named reference Project Verona was invoked but never defined (see the help page).
  9. ^ Cite error: The named reference Jaloyan was invoked but never defined (see the help page).
  10. ^ Cite error: The named reference Lattner was invoked but never defined (see the help page).
  11. ^ "V documentation (Introduction)". GitHub. The V Programming Language. Retrieved 2023-11-04.
  12. ^ Yegulalp, Serdar (2016-08-29). "New challenger joins Rust to topple C language". InfoWorld. Archived from the original on 2021-11-25. Retrieved 2022-10-19.


Cite error: There are <ref group=note> tags on this page, but the references will not show without a {{reflist|group=note}} template (see the help page).