Materials for learning ReasonML

Jacob Sherin

October 03, 2019

This post is a follow-up to the workshop ”Build production-ready user interfaces with ReasonML

Practicing language basics

Try learn-reasonml-workshop to practice ReasonML basics including functional programming and types. It is a set of 24 exercises that you can run locally in your machine.

If you get stuck somewhere, you can find the answers here in this Pull Request contributed by Ludwig Vantours.

Introductory reading for Reason

An invitation to ReasonML. A whirlwind look at the language and its prominent features.

“How functional is Ruby?”. Compare the implementation of map between Ruby and ReasonML (the lesson applies equally to Javascript) to understand how linked-lists are important to do functional programming.

Learning to program effectively with types

Making Impossible States Impossible by Richard Feldman

Effective ML by Yaron Minsky



Designing with Modules from Real World OCaml.

Scott Wlaschin’s series desigining with types in F#

Understanding Testing best practices

The Magic Tricks of Testing by Sandi Metz (Ruby)

Don’t Write Tests by John Hughes (Erlang)

Ideology by Gary Bernhardt


OCaml for the Masses by Yaron Minsky (2011)

The Design of a Pretty-printing Library by John Hughes (1995)

Out of the Tar Pit (essential vs accidental complexity)

Open-source ReasonML codebases

Interactive ReasonML sketchbook


Design for Programmers

Refactoring UI by Steve Schoger

Design for Hackers