Introduction - Learn Rust

Plop Grizzly uses The Rust Programming Language to build their software. This book serves as a tutorial to learn everything you need to know about Rust to program with Plop Grizzly.

Why Rust?

Here's what their website has to say:

Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety.

Featuring

  • zero-cost abstractions
  • move semantics
  • guaranteed memory safety
  • threads without data races
  • trait-based generics
  • pattern matching
  • type inference
  • minimal runtime
  • efficient C bindings

Well, these are all pretty great. Let's take a look at how it applies to creating quality software.

Quality software.... How does Rust help?
Doesn't Crash Prevents segfaults
Is fast (you don't have to wait for it) Blazingly Fast (as fast as C when not multithreading), Threads without data races (Only programming language where that's easy, making mulithreading in Rust faster than in C), Efficient C Bindings (Calling C functions isn't slow, which is necessary because to interface with the OS, you have to call C functions), Zero-cost abstractions (making it easier to program doesn't make it slower, which is not true of most other languages)
Doesn't have bugs Guarantees Thread Safety (Writes and Reads to the same memory from different threads will never happen at the same time), also memory safety.
Is easy to change, because it's easy to read the code Pattern Matching (no more cryptic switch/case blocks - now match), Type Inference (if it's unnessary to write the type, you don't have to)
Trivial Build System Cargo makes building your code fast and easy.

Prerequisites To The Tutorial

  • A computer with Linux, Windows, or Mac OS installed on it ( other OS's may work too )
  • Git ( Fedora: In Terminal: sudo dnf install git, Other Linux: In Terminal: sudo apt-get install git, Windows / Mac: https://git-scm.com/downloads - on Windows, be sure to check Checkout as-is, commit Unix-style line endings )
  • Rust ( Unix / Windows: In Terminal / GIT BASH: curl https://sh.rustup.rs -sSf | sh )
  • A Text Editor ( Linux: Gedit should already be installed - make sure tab width is set to 8, Windows: Notepad++ https://notepad-plus-plus.org/repository/7.x/7.3.3/npp.7.3.3.Installer.exe - make sure tab size is set to 8 under Settings -> Preferences -> Language )

results matching ""

    No results matching ""