Maybe Haskell
Programming Without Null
What would it be like to program in a language without the frustrating concept of null? In our new book, , we explore exactly this. Haskell takes the idea that some values may not be present and makes it a first-class concept in the type system. In this book, you'll learn just enough Haskell to really see how this idea works in practice.
Who is this book for?
You might have no Haskell knowledge at all, but you’re interested in exploring a functional language. Perhaps you’ve heard others talk about Monads and want to know more. Maybe (heh) you’re interested in a different approach to handling missing values.
This book won’t teach you Haskell. It will teach you just enough Haskell, in a short amount of time, that you can understand its explanation of some cool, pragmatic functional stuff. You might even take these concepts back to your object-oriented language.
Hopefully you’ll be motivated to make the time to actually learn Haskell from another resource after reading .
More than just a book
The book is written using Markdown and distributed via GitHub. When you purchase, we give you access directly to the repository, so you can use the GitHub issues features to give us feedback about what we’ve written and what you’d like to see.
This also means that you’ll be the first to know when new content has been added to the book, and have the easiest time getting it.
Table of Contents
Introduction
- An Alternate Solution
- Required Experience
- Structure
- What This Book is Not
Haskell Basics
- Operators
- Our Own Data Types
- Pattern Matching
- Sum Types
- Kinds and Parameters
- Maybe
- Don't Give Up
Functor
- Choices
- Discovering a Functor
- About Type Classes
- Functor
- The Functor Laws
- Why Is This Useful?
- Curried Form
- Partial Application
Applicative
- Hiding Details
- Follow the Types
- Apply
- Chaining
- Applicative In the Wild
Monad
- More Power
- And Then?
- Bind
- Chaining
- Do Notation
- Will it Pipe?
- Wrapping Up
Other Types
- Either
- List
- IO
was written by Pat Brisbin.
You'll get .pdf, .mobi, .epub, and .html files