Rust Learning Modules

These learning modules support the training session Rust, the good, the bad, and the ugly. They introduce Rust from the perspective of scientific and technical computing.

The modules are written as reading material. The slide deck in slides-source/ is the teaching aid for in-person delivery.

Learning Path

  1. Getting Started With Rust Projects
  2. Scalar Computation And Numeric Basics
  3. Control Flow And Program Structure
  4. Ownership, Borrowing, And Mutation
  5. Data Modeling With Structs And Methods
  6. Reusable Abstractions With Traits
  7. Collections, Iterators, And Text Data
  8. Error Handling
  9. Project Organization, Libraries, And Tests
  10. Randomness And Reproducible Runs
  11. Data Parallelism With Rayon
  12. Integrated Numerical Example: Julia Set
  13. Integrated Numerical Example: N-Body Simulation

The module structure page gives an overview of the intended sequence and the source-code examples used in each module.