Rust

Rust
Rust logo
Faililaiend .rs, .rlib
Paradigma Funktsionaalne, imperatiivne, struktureeritud, üldine, mitmeparadigmaline
Väljalaskeaeg 7. juuli 2010
Looja Graydon Hoare
Arendaja The Rust Project
Viimane väljalase 1.79.0 (13.06.2024) Muuda Vikiandmetes
Tüüpimine lineaarne, nominaalne, staatiline, tugev
Implementatsioonid Rust
Mõjutatud keeltest Alef,[1] C sharp,[1] C++,[1] Cyclone,[1][2] Erlang,[1] Haskell,[1] Limbo,[1] Newsqueak,[1] OCaml,[1] Ruby,[1] Scheme,[1] Standard ML,[1] Swift[1][3]
Mõjutanud keeli Crystal, Elm,[4] Idris,[5] Spark,[6] Swift[7]
OS Linux, macOS, Windows, FreeBSD, OpenBSD, Redox, Android, iOS[8]
Litsents MIT või Apache 2.0[9]
Veebileht www.rust-lang.org

Rust on mitmeparadigmaline üldotstarbeline programmeerimiskeel, mis keskendub peamiselt tüübikindlusele, jõudlusele ja turvalisusele, eriti turvalisele samaaegsusele.[10][11] Rust on süntaksi poolest sarnane C++ga,[12] kuid on disainitud selleks, et tagada parem mälu turvalisus hoides kõrget jõudlust. Keeles viitavad kõik viitajad alati asjakohasele mälule (mäluobjektid viidete taga on alati korrektsed) ilma, et oleks vajalik laialdasem mäluhaldussüsteem, nagu näiteks prügikogumine.

Mäluturvalisuse kindlustamiseks ja andmete võidujooksude vältimiseks kasutab Rust "laenukontrollijat", mis jälgib kompileerimise ajal iga programmis oleva objektiviida eluaega. Rusti arendust inspireerisid funktsionaalne programmeerimine, sealhulgas muutmatus, kõrgema järgu funktsioonid ja algebralised andmetüübid.

Algselt oli Rust disainitud Graydon Hoare'i poolt Mozilla uurimisasutuses, kaasa aitasid ka Dave Herman, Brendan Eich ja teised.[13][14] Disainerid arendasid keelt samal ajal kui nad kirjutasid koodi Servo küljendusmootori[15] ja Rusti enda kompileerija jaoks.

Rust on alates 2016. aastast olnud igal aastal Stack Overflow arendajate küsitluses olnud "kõige rohkem armastatud programmeerimiskeel".[16][17][18][19] Keelt kasutavad firmad nagu Amazon, Discord, Dropbox, Google (Alphabet), Facebook ja Microsoft. Detsembris 2022 sai sellest ainus keel peale C ja assemblerkeele, mida on võimalik kasutada Linuxi tuuma arendamises.

  1. 1,00 1,01 1,02 1,03 1,04 1,05 1,06 1,07 1,08 1,09 1,10 1,11 1,12 "The Rust Reference: Appendix: Influences". Vaadatud 6. detsembril 2019. 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 [...] C++ [...] ML Kit, Cyclone [...] Haskell [...] Newsqueak, Alef, Limbo [...] Erlang [...] Ruby [...] Swift [...] Scheme [...] C# [...]
  2. "Note Research: Type System". 1. veebruar 2005. Vaadatud 6. detsembril 2019. Papers that have had more or less influence on Rust, or which one might want to consult for inspiration or to understand Rust's background. [...] Region based memory management in Cyclone [...] Safe memory management in Cyclone
  3. "RFC for 'if let' expression". Vaadatud 6. detsembril 2019.
  4. "Command Optimizations?". 26. juuni 2014. Vaadatud 6. detsembril 2019. I just added the outline of a Result library that lets you use richer error messages. It's like Either except the names are more helpful. The names are inspired by Rust's Result library.
  5. "Idris – Uniqueness Types". Vaadatud 6. detsembril 2019.
  6. Jaloyan, Georges-Axel (19. oktoober 2017). "Safe Pointers in SPARK 2014". Vaadatud 6. detsembril 2019. {{cite journal}}: viitemall journal nõuab parameetrit |journal= (juhend)
  7. Lattner, Chris. "Chris Lattner's Homepage". Nondot.org. Vaadatud 6. detsembril 2019.
  8. "Building and Deploying a Rust library on iOS". 6. september 2017. Vaadatud 6. detsembril 2019.
  9. Hoare, Graydon (28. detsember 2016). "Rust is mostly safety". Graydon2. Dreamwidth Studios. Vaadatud 6. detsembril 2019.
  10. "FAQ – The Rust Project". Rust-lang.org. Originaali arhiivikoopia seisuga 9. juuni 2016. Vaadatud 6. septembril 2017.
  11. "Rust vs. C++ Comparison". Vaadatud 6. detsembril 2019. Rust is syntactically similar to C++, but it provides increased speed and better memory safety
  12. Noel (8. juuli 2010). "The Rust Language". Lambda the Ultimate. Vaadatud 6. detsembril 2019.
  13. "Contributors to rust-lang/rust". GitHub. Vaadatud 6. septembril 2017.
  14. Bright, Peter (3. aprill 2012). "Samsung teams up with Mozilla to build browser engine for multicore machines". Ars Technica. Vaadatud 6. detsembril 2019.
  15. "Stack Overflow Developer Survey 2016 Results". Stack Overflow. Vaadatud 6. detsembril 2019.
  16. "Stack Overflow Developer Survey 2017". Stack Overflow. Vaadatud 6. detsembril 2019.
  17. "Stack Overflow Developer Survey 2018". Stack Overflow. Vaadatud 6. detsembril 2019.
  18. "Stack Overflow Developer Survey 2019". Stack Overflow. Vaadatud 6. detsembril 2019.

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Tubidy