Rust (bahasa pemrograman)
Rust adalah sebuah bahasa pemrograman sistem[12] yang pengembangannya didukung oleh penelitian dari Mozilla.[13] Bahasa ini dirancang agar menjadi pemrograman yang "aman, konkuren (bekerja bersamaan) dan praktis".[14] Bahasa ini mendukung paradigma pemrograman fungsional dan prosedural-imperatif. Sintaksis bahasa Rust serupa dengan bahasa C++ namun dirancang dengan keamanan memori yang lebih baik sembari tetap menjaga performa kerja.
![]() | |
| Paradigma | Bahasa pemrograman berparadigma jamak, Terkompilasi, Konkuren, Fungsional, Imperatif, Terstruktur, dan Generik |
|---|---|
| Dirancang oleh | Graydon Hoare |
| pengembang | Rust Project Developers |
| Rilis perdana | 2010 |
| Rilis stabil | 1.58.1[1]
/ 20 Januari 2022 |
| Tipe Sistem | Statis, Kuat, Terinferensi, Nominal, dan Linear. |
| Implementasi dari | Rust |
| Platform | Lintas platform[2][note 1] |
| OS | Linux, macOS, Windows, FreeBSD, Android, iOS (sebagian)[3] |
| Lisensi | Lisensi Apache 2.0 dan MIT[4] |
| Ekstensi nama berkas | .rs, .rlib |
| Website | www |
| Terpengaruh oleh | |
| Alef,[5] C#,[5] C++,[5] Cyclone,[5][6] Erlang,[5] Haskell,[5] Hermes,[5] Limbo,[5] Newsqueak,[5] NIL,[5] OCaml,[5] Ruby,[5] Scheme,[5] Standard ML,[5] Swift[5][7] | |
| Mempengaruhi: | |
| www | |
Bahasa Rust ini tergolong pada peranti lunak sumber terbuka. Desainnya merupakan perbaikan bedasarkan pengalaman-pengalaman yang dialami ketika mengembangkan Servo, sebuah perangkat layout untuk peramban web dan kompilator Rust.[15]
Kebanyakan commit kode program yang masuk pada proyek Rust saat ini berasal dari kontribusi anggota komunitas.[16] Bahasa Rust mendapatkan posisi pertama dengan predikat sebagai "Bahasa pemrograman paling disukai" pada survei pengembang di Stack Oveflow tahun 2016 dan 2017.[17][18]
Contoh kode
Hello World
Berikut ini adalah contoh baris kode sederhana untuk menampilkan Hello World
fn main() {
println!("Hello World");
}
Rekursif
fn factorial(i: u64) -> u64 {
match i {
0 => 1,
n => n * factorial(n-1)
}
}
Iteratif
fn factorial(i: u64) -> u64 {
let mut acc = 1;
for num in 2..=i {
acc *= num;
}
acc
}
Lihat pula
- Redox (sistem operasi), Sistem Operasi menggunakan bahasa Rust,
- Rocket (web framework), kerangka kerja pembangun aplikasi web menggunakan bahasa Rust.
- Quantum (Mozilla), proyek yang dikembangkan oleh Mozilla untuk menggantikan Gecko sebagai mesin utama peramban Firefox.
Catatan
Rujukan
- "Announcing Rust 1.58.1". blog.rust-lang.org. 2022-01-20. Diakses tanggal 2022-02-01.
- "Rust on iOS". GitHub. 2015-01-09. Diarsipkan dari versi asli tanggal 2014-07-23. Diakses tanggal 2017-06-22.
- "Copyright". Rust compiler source repository. Diakses tanggal 2015-11-09.
- "The Rust Reference: Appendix: Influences". Diakses tanggal July 14, 2017.
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 [...] Swift [...] Scheme [...] C# [...] Ruby [...] NIL, Hermes
- "Note Research: Type System". 2015-02-01. Diakses tanggal 2015-03-25.
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
- "RFC for 'if let' expression". Diakses tanggal December 4, 2014.
- "Uniqueness Types". Idris 1.3.3 documentation. Diakses tanggal 2022-07-14.
They are inspired by ... ownership types and borrowed pointers in the Rust programming language.
- "Rust is a systems programming language". Rust-lang.org. Diakses tanggal 2017-07-17.
- Noel (2010-07-08). "The Rust Language". Lambda the Ultimate. Diakses tanggal 2010-10-30.
- "FAQ - The Rust Project". Rust-lang.org. Diarsipkan dari versi asli tanggal 2016-02-23. Diakses tanggal 2 March 2016.
- Peter Bright (2013-04-03). "Samsung teams up with Mozilla to build browser engine for multicore machines". Arstechnica.com. Diakses tanggal 2013-04-04.
- "Contributors to rust-lang/rust ยท GitHub". Github.com. Diakses tanggal 2016-11-03.
- "Stack Overflow Developer Survey 2016 Results". Stack Overflow. Diakses tanggal 2017-03-22.
- "Stack Overflow Developer Survey 2017". Stack Overflow. Diakses tanggal 2017-03-22.
Pranala luar
- Situs web resmi
- Dokumentasi Rust
- Rust by Example โ Contoh program kecil di Rust
- Blog Rust
- Belajar Rust
- Forum Rust
- Portal komunitas Rust
- Milis Rust-dev
- Komunitas Rust di Reddit
- Komunitas Rust di Discord
- Repositori Rust di GitHub
- Repositori rust-rosetta di GitHub โ Implementasi dari algoritme-algoritme umum dan penyelesaiannya
- Rust diperbandingkan dengan bahasa-bahasa pemrograman lain โ Perbandingan interaktif
