A Workers Guide To Typed Functional Programming

Introduction

This is an introductory tutorial on typed functional programming in TypeScript, using the extensive toolkit of fp-ts. You are in the right place if:

  • You want to learn functional programming.
  • You want to learn fp-ts.
  • You are being forced into functional programming by your coworkers.

We are using TypeScript and fp-ts to explore this paradigm, but these skills are transferrable between languages and libraries. You will learn to solve problems in a typed, functional style using composition and data types, such as Optional, Either and whatever else we find useful.

To get the most out of this tutorial, you should bring a solid understanding and intuition for JavaScript, including its ES6+ feature set and basic knowledge of TypeScript.

Work In Progress

As the authors of this tutorial are employed full time, it will grow and evolve as they find time to write it, but feel free to offer critique and corrections by opening issues on the repository, or by voicing your suggestions in the functional programming slack.