Rust for Haskell Programmers!

While we focus on Haskell at MMH, it's also good to branch out to other languages every once and a while. If you're a diehard Haskell developer, Rust is one of the more interesting languages to try out when you broaden your horizons. Its syntax has a lot in common with more common, object oriented languages like C++ and Java. But it also incorporates a lot of ideas that Haskell developers would find familiar. In this series, we'll learn the basics of Rust, coming from the perspective of Haskell programmers.

rust.jpg

Part 1: Basic Syntax

You have to walk before you can run! Start your journey here in part 1, where we'll learn the basics of Rust's syntax.

Part 2: Managing Memory

One of the things that distinguishes Rust from Haskell is the way it handles memory. Rust is meant to be more performant than Haskell, so it forces us to think more about memory while we're programming. In part 2 of the series, we'll see what this looks like.

Part 3: Data Types

Data types are one area where Rust borrows some great ideas from Haskell! Take a look at part 3 to learn more!

Part 4: Cargo Package Manager

Like any good language, Rust comes with a development toolchain for package management and dependency handling. Cargo is very much Rust's equivalent to Stack. And in part 4, we'll see how to use it.

Part 5: Collections and Lifetimes

In the fifth and final part of this series, we'll explore a couple more topics that will round out your Rust eduction. We'll first see how to use collection types in Rust. Then we'll see some of the implications of Rust's memory model on these types. This will lead us to an exploration of the concept of lifetimes.

Review: Rust Video Tutorial

Sometimes, it helps to see things in action, rather than just reading about them! In our Rust video tutorial, we'll go through all the concepts from this series from scratch, starting with installation! You'll get to see specific examples, and what a general development flow looks like.