Rust | |
---|---|
![]() | |
Paradigms | |
Developer | The Rust Team |
First appeared | January 19, 2012 |
Stable release | 1.87.0[1] ![]() |
Typing discipline | |
Implementation language | OCaml (2006–2011) Rust (2012–present) |
Platform | Cross-platform[note 1] |
OS | Cross-platform[note 2] |
License | MIT, Apache 2.0[note 3] |
Filename extensions | .rs , .rlib |
Website | rust-lang.org |
Influenced by | |
Influenced | |
Rust is a general-purpose programming language emphasizing performance, type safety, and concurrency. It enforces memory safety, meaning that all references point to valid memory. It does so 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.
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.
Software developer Graydon Hoare created Rust as a personal project while working at Mozilla Research in 2006. Mozilla officially sponsored the project in 2009. The first stable release of Rust, Rust 1.0, was published in May 2015. Following a large layoff of Mozilla employees in August 2020, multiple other companies joined Mozilla in sponsoring Rust through the creation of the Rust Foundation in February 2021. In December 2022, Rust became the first language other than C and assembly to be supported in the development of the Linux kernel.
Rust has been noted for its adoption in many software projects, especially web services and system software. It has been studied academically and has a growing community of developers.
licenses
was invoked but never defined (see the help page).
Those of you familiar with the Elm style may recognize that the updated --explain messages draw heavy inspiration from the Elm approach.
influences
was invoked but never defined (see the help page).
They are inspired by ... ownership types and borrowed pointers in the Rust programming language.
Project Verona
was invoked but never defined (see the help page).
Jaloyan
was invoked but never defined (see the help page).
Lattner
was invoked but never defined (see the help page).
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).
© MMXXIII Rich X Search. We shall prevail. All rights reserved. Rich X Search