Rust Resources
Collected Links
AKA my Rust bookmarks in the cloud...
I've been exploring the Rust ecosystem for a while now, and I have come across a lot of things that might be useful, even if they're not so well known. This is my collection of off-the-beaten-track Rust-related websites, books, and articles, which I humbly submit to the reader for perusal. I hope they may be of some use.
Markdown Books
I love the mdbook format, and this little book is a collection of books itself. They're mostly unofficial, and unlike the official documentation are mostly dedicated to niche applications.
One of my favorites is this one, on optimizing Rust code in a sane and effective manner.
Effective Rust is also a must-read, and the printed version is probably worth it!
Google's Comprehensive Rust is an md-book style teaching resource for getting a small team of devs up to speed in Rust, and is used by their C++ developers transitioning to Rust.
Rust Design Patterns is about common solutions to recurring problems in Rust, such as the builder pattern. If you're worried about the idiomatic way to write something, this may have what you're looking for.
Cheat-sheets
The best cheat-sheet I know of is the one at cheats.rs.
Operating Systems
Phillip Oppermann has an excellent blog series on writing an operating system in Rust, which has step-by-step walkthroughs and more.
Additionally, Luc Lenôtre is working on the Maestro UNIX-like kernel, which has currently implemented about 30% of the Linux syscalls, and is being actively improved. The repo is here...
Algorithms
If you need to learn about a mathematical or scientific algorithm, then the Arcane Algorithm Archive is a great place to start. By default, it displays programs in Julia, but you can switch to Rust by clicking the language selector in the top left.
NIST has this old data structures and algorithms dictionary, which, while not specifically related to Rust, is a great resource, and might prove helpful to someone.
Compilers & Parsers
If you're interested in writing a compiler or interpreter (which is something I want to do, but haven't had the time for) then I found a few epic resources. One of the quintessential pieces on the topic is this plain-text website by Jack Crenshaw, written in the late 80s and early 90s.
Dr. Brian Callahan wrote a compiler in C for the PL/0 language, which was originally created by Niklaus Wirth, the inventor of Pascal and many other important pieces of technology. He walks through the entire process in his blog, starting with this post.