CITATION — REFERENCE ENTRY
Influences — The Rust Reference — The Rust Project
- Key
- rust-reference-influences
- Type
- webpage
- Publisher
- The Rust Project
Raw CSL JSON
{
"URL": "https://doc.rust-lang.org/reference/influences.html",
"note": "Appendix 21.4 of the official Rust Reference. Lists languages that influenced Rust's design, including some features that have since been removed.",
"type": "webpage",
"title": "Influences — The Rust Reference",
"publisher": "The Rust Project"
}
Claims
-
The official Rust Reference lists numerous language influences including SML, OCaml, C++, Haskell, Newsqueak, Alef, Limbo, Erlang, Swift, Scheme, C#, Ruby, and NIL/Hermes, among others.
"Rust is not a particularly original language, with design elements coming from a wide range of sources. Some of these are listed below (including elements that have since been removed): SML, OCaml: algebraic data types, pattern matching, type inference, semicolon statement separation; C++: references, RAII, smart pointers, move semantics, monomorphization, memory model; ML Kit, Cyclone: region based memory management; Haskell (GHC): typeclasses, type families; Newsqueak, Alef, Limbo: channels, concurrency; Erlang: message passing, thread failure, linked thread failure, lightweight concurrency; Swift: optional bindings; Scheme: hygienic macros; C#: attributes; Ruby: closure syntax, block syntax; NIL, Hermes: typestate"
Available in