Rust

2024

Mini-rust in Rust 008: Refactoring our parser -

Mini-rust in Rust 007: Evaluating an operation -

Mini-rust in Rust 006: Parsing an operation -

Mini-rust in Rust 005: Making our lexer an iterator -

Mini-rust in Rust 004: Refactoring our lexer -

Mini-rust in Rust 003: Much prettier errors -

Mini-rust in Rust 002: Errors while lexing -

Mini-rust in Rust 001: Lexing an int -

Rust 101 - 53: Exercises for module G (q4) -

Rust 101 - 52: Exercises for module G (q3) -

Rust 101 - 51: Exercises for module G (q2) -

Rust 101 - 50: Exercises for module G (q1) -

Rust 101 - 49: Foreign function interfaces (interacting with other languages) -

Rust 101 - 48: Exercises for module F (q3) -

Rust 101 - 47: Exercises for module F (q2) -

Rust 101 - 46: Exercises for module F (q1) -

Rust 101 - 45: Unsafe types and examples -

Rust 101 - 44: Undefined behaviour -

Rust 101 - 43: The two meanings of "unsafe" in Rust -

Rust 101 - 42: Why do we need unsafe? -

Rust 101 - 41: Exercises for module E (q2b) -

Rust 101 - 40: Exercises for module E (q2a) -

Rust 101 - 39: Exercises for module E (q1b) -

Rust 101 - 38: Exercises for module E (q1a) -

Rust 101 - 37: Async runtimes -

Rust 101 - 36: What async and await really do -

Rust 101 - 35: Futures -

Rust 101 - 33: Exercises for module D (q3) -

Rust 101 - 32: Exercises for module D (q2) -

Rust 101 - 31: Exercises for module D (q1) -

Rust 101 - 30: Good patterns and not so good -

Rust 101 - 29: Trait objects and object safety -

Rust 101 - 28: Dynamic dispatch -

Rust 101 - 27: Exercises for module C (q2) -

Rust 101 - 26: Exercises for module C (q1) -

Rust 101 - 25: Threads, Mutexes, channels, Send and Sync -

Rust 101 - 24: Parallelism and Rayon -

Rust 101 - 23 Exercises for module B (q3) -

Rust 101 - 22 Exercises for module B (q2) -

Rust 101 - 21 Exercises for module B (q1) -

Rust 101 - 20: Unit, integration and benchmark tests -

Rust 101 - 19: Creating a nice API -

Rust 101 - 18: Dependencies and Cargo.toml -

Rust 101 - 17: Exercises for module A3 (part 2) -

Rust 101 - 16: Exercises for module A3 (part 1) -

One import per line is best -

Rust 101 - 15: Lifetime bounds -

Rust 101 - 14: Some standard library traits -

Rust 101 - 13: Type Parameters and Associated Types -

Rust 101 - 12: Traits -

Rust 101 - 11: Exercises for module A2 -

Rust 101 - 10: Strings -

Rust 101 - 9: Vecs, Boxes and slices -

Rust 101 - 8: Writing methods using impl blocks -

Rust 101 - 7: Error handling with panic and Result -

2023

Santa Circles 0.3 is out! -

Rust 101 - 6: Structs and Enums -

Rust 101 - 5: References -

Rust 101 - 4: Exercises for module A1 -

Rust 101 - 3: Memory and ownership -

Rust 101 - 2: Language basics -

Rust 101 - 1: Course intro -

Rust WASM hello world - no need for webpack! -

2022

Building cross-platform Rust for Web, Android and iOS - a minimal example -

2021

What to cache when building Rust using Gitlab CI or similar -

Announcing I-DUNNO 1.0 and web-i-dunno -

Announcing Rust I-DUNNO -

Limiting the number of open sockets in a tokio-based TCP listener -

2020

Shutdown order consistency: how Rust helps -

Edge computing providers -

short - command line tool to truncate lines to fit in the terminal -

Creating a tiny Docker image of a Rust project -

Struggling with Rust to figure out the right types for a function signature -

2018

Questions and answers about Pepper3 -