Learning Functional Programming in Scala (pdf)

My new book, Learning Functional Programming in Scala, is currently on sale as a PDF you can purchase for just $25 US. (The price will be increased to $30 on August 1st.) Details are listed below.

Back to top

What’s new (June 25, 2017)

If you’ve been following along with me recently, the latest changes are:

  • The PDF is 807 pages long.
  • That includes 88 short chapters, and over 180 new pages since the last free release in May.
  • The new chapters cover Option, flatMap, for expressions, writing your own “wrapper” classes (i.e., functors and monads), the IO and State monads, and function composition.

The June 25th release (Version 0.1.3) is a free update to everyone who purchased Version 0.1.2 of the book.

Back to top

Buying the book

Here are some important things to know before you buy the book:

  • While it’s in good enough shape to be helpful, I still consider this to be an “alpha” release.
  • When you buy the PDF, you’ll get free updates to it as soon as they become available.
  • The price of the book will be increased to $30 on August 1, 2017.

You can buy the book at this gumroad.com link:

Back to top

One more thing

I’m glad to say this:

5% of the profits will be donated to The Scala Center.

This is a small way to “pay it forward,” and show my gratitude to the creators of the Scala language and the Scala community.

Back to top

Preview

If you’d like to preview the book before buying it, you can choose from these two options:

Note that I’m putting 99% of my effort into the PDF, so I won’t be adding any lessons to the HTML version any time soon.

Back to top

Some time in the future ...

At some point I hope to have MOBI and hardcopy versions of the book available, but until I decide what I want to include in the final version, this seems like the best way to help people today.

Back to top
Permalink

It is an awesome book, I really enjoy reading it.

Page 240 of the 0.1.2 PDF version of this book

"... such as the earlier sum function - its type would be shown like this:

Map[(Int, Int) => Int]"

I think the type should be

(Int, Int) => Int

Permalink

Alvin,
The gum road website allowed my to download the new revision today with no difficulties. Thank you for posting the earlier version to read and I appreciated being able to purchase the book.

Add new comment

The content of this field is kept private and will not be shown publicly.

Anonymous format

  • Allowed HTML tags: <em> <strong> <cite> <code> <ul type> <ol start type> <li> <pre>
  • Lines and paragraphs break automatically.
By submitting this form, you accept the Mollom privacy policy.