Edit product


Functional Programming, Simplified (PDF)

December 8, 2019: Normally priced $25, the PDF is now on sale for just $15.

What would it be worth to your career and future income if you could say, “I understand the fundamentals of functional programming”? For $15 — the cost of just one or two pizzas — you should be able to say that after reading this book.

Other versions

On this website (Gumroad.com) you can buy the PDF version of the book. If you’re interested in other versions of the book:

Please note that there are no refunds on digital products like this, so if you want to be sure about what you’re buying, there’s a link to a large, free preview at the bottom of this page.

Reader comments

Feedback from readers:

  • Your book is fantastic, I can’t find enough words to thank you!
  • Best Scala book I’ve read.
  • This is a GREAT book!
  • I finally understand monads. Thank you!
  • I love the writing style and the approach, great job!
  • I read this everyday after work and it makes me so happy. Thank you for this amazing book.
  • I love the small lessons, they make it easy to read.
  • The best $15 spent on a tech book, ever.
  • Thanks Alvin for opening the door for this new world.
  • Your book was a real game changer to learn FP.
  • Very nice explanation. Just awesome.
  • Functional Programming Simplified is amazing, thank you for writing this.
  • Best book on Scala and FP I have read.

November, 2019: The book is 4.5-star rated on Amazon.com.

A modern FP book

Hi, my name is Alvin Alexander. I wrote the Scala Cookbook for O’Reilly, and this is my new book about functional programming (FP). Released in December, 2017, it’s one of the most modern books about Scala and functional programming. Inspired by the style of books like “A Smarter Way to Learn JavaScript” (https://amzn.to/2r9Km9m), it’s broken down into 137 small lessons that you can read in about five minutes each.

Why learning FP in Scala is hard

When I first started trying to learn functional programming in Scala, I struggled — a lot. I read books on functional programming in Scala, hundreds of blog posts, watched videos, etc., but I still couldn’t understand it.

The only way I was finally able to understand FP was to take a few weeks off from my regular job and learn Haskell. Once I understand FP in Haskell I came back to Scala and it all made sense. I now knew why I couldn’t learn functional programming in Scala, and I share everything I learned in the lessons of this book.

I believe my “Five Rules” will help you learn Scala/FP, and I hope it will save you all of the time I lost and frustration I went through.

All the best,


In the book you’ll learn:

  • five important rules for writing FP code in Scala
  • why pure function signatures are much more important than OOP method signatures
  • how pure functions work with I/O
  • lessons to simplify recursion
  • partially-applied functions and currying
  • type signatures are covered many times, so your brain can get used to patterns like `StateT[IO,GameState,Int]`
  • the proper way to handle exceptions and null values
  • many lessons on for-expressions, which lead naturally into monads
  • State and IO monads, and monad transformers like StateT
  • domain modeling with Scala/FP
  • an introduction to type classes, including an example with the Cats library
  • handling concurrency with Akka actors and Scala futures
  • visual lessons on collections’ methods like `fold` and `reduce`
  • much more ...

The book is organized into small, single-purpose lessons that flow in a logical order. You’ll see how one concept naturally leads to the next concept, and that concept leads to another one, and so on.

What you get

Here on Gumroad.com you’ll get a copy of the PDF version of Functional Programming, Simplified. This is the full, unmodified version of the book.

Other versions

You can buy the paperback version of the book here: https://amzn.to/2DJ2s9J

And you can buy the Kindle version of the book here: https://amzn.to/2Bv9LjC

Free preview!

There are no refunds on digital products like this, but you can obtain a large, free preview of the book at this URL:


You've purchased this product

See it in your library

View in Library
Sorry, this item is not available in your location.
Sold out, please go back and pick another option.

0 ratings


Functional Programming, Simplified (PDF)

Enter your info to complete your purchase


···· ···· ···· 4242
Test card



Use a different card?


pp paypal

or pay with

We do not keep any of your sensitive credit card information on file with us unless you ask us to after this purchase is complete.

or pay with

You'll be charged US$15.

Your purchase was successful!

We charged your card and sent you a receipt

    Gumroad Library

    Download from the App Store or text yourself a link to the app

    Good news! Since you already have a Gumroad account, it's also been added to your library.

    Powered by Gumroad