https://github.com/argodevops/learning-rust
Repository of examples to help with learning Rust.
https://github.com/argodevops/learning-rust
rust
Last synced: about 1 year ago
JSON representation
Repository of examples to help with learning Rust.
- Host: GitHub
- URL: https://github.com/argodevops/learning-rust
- Owner: argodevops
- Created: 2024-01-27T17:01:31.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-04T08:35:19.000Z (over 2 years ago)
- Last Synced: 2025-01-25T22:21:13.615Z (over 1 year ago)
- Topics: rust
- Language: Rust
- Homepage:
- Size: 3.06 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# learning-rust
Repository of examples to help with learning Rust.
The Rust Lang Book https://doc.rust-lang.org/stable/book/title-page.html.
This repo follows the YouTube Let's Get Rusty series https://www.youtube.com/playlist?list=PLai5B987bZ9CoVR-QEIN9foz4QCJ0H2Y8 which goes over every chapter of the Rust book. The repo is split into sections covering the aspects of the Rust language with snippets of Rust code.
## Rust Goals
The goal of Rust is to be a good programming language for creating highly concurrent, safe and performant systems.
> **"Rust is a systems programming language focused on three goals: safety, speed, and concurrency."**
> \_\_ Rust Documentation
Rust is very young and very modern language. It is a **[compiled programming language](https://en.wikipedia.org/wiki/Compiled_language)** and it uses [LLVM](https://en.wikipedia.org/wiki/LLVM) on the backend. Also, Rust is a **[multi-paradigm programming language](https://en.wikipedia.org/wiki/Comparison_of_multi-paradigm_programming_languages)**, which supports imperative procedural, concurrent actor, object-oriented and pure functional styles. It also supports generic programming and metaprogramming, in both static and dynamic styles.
> 🔎 One of Rust’s most unique and compelling features is [Ownership](/docs/ownership), which is used to achieve memory safety. Rust creates memory pointers optimistically, checks memory pointers’ limited accesses at compile-time with the usage of [References and Borrowing](/docs/borrowing). And it does automatic compile-time memory management by checking the [Lifetimes](/docs/lifetimes).
## Influences
Its design elements came from a wide range of sources.
- Abstract Machine Model: **C**
- Data types: **C, SML, OCaml, Lisp, Limbo**
- Optional Bindings: **Swift**
- Functional Programming: **Haskell, OCaml, F\#**
- Attributes: **ECMA**-335
- Memory Model and Memory Management: **C++, ML Kit, Cyclone**
- Type Classes: **Haskell**
Rust **doesn't use an automated garbage collection** system\(GC\) by default.
Rust compiler observes the code **at compile-time** and helps to [**prevent many types of errors**](https://doc.rust-lang.org/error-index.html) that are possible to write in C, C++ like programming languages.
## Installing Rust
`curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh`
## Sections
* [Hello Cargo](hello_cargo/README.md)