New to Functional Programming? Read the Functional Programming article
Software Design in Functional Programming, Design Patterns and Practices, Methodologies and Application Architectures. How to build real software in Haskell with less efforts and low risks. The first complete source of knowledge.
Sockets and Pipes is not an introduction to Haskell; it is an introduction to writing software in Haskell. Using a handful of everyday Haskell libraries, this book walks through reading the HTTP specification and implementing it to create a web server.
Read the case studies and learn how property-based testing uncovered subtle bugs in a complex GUI application.
This practical ebook is a guide to programming with the Plutus language for highly secure smart contracts on the Cardano blockchain, home of the ada cryptocurrency. Plutus is based on the Haskell functional programming language and comes complete with a full testing environment accessed via any browser.
A comprehensive example-driven guide to optics. Examples in Haskell, but adaptable to other languages. Become a data-manipulation wizard using optics to manipulate data! This book takes you from beginner to advanced using Lenses, Traversals, Prisms, and more!
Grab your compiler and follow along as the authors develop and gradually refine a short Haskell program. This extremely approachable guide explains topics like case expressions, sum and product types, type constructors, typeclasses, and newtype coercion as they are motivated by the example code, with exercises to reinforce your understanding.
This book aims to be the comprehensive manual for type-level programming. It's about getting you from here to there---from a competent Haskell programmer to one who convinces the compiler to do their work for them.
Do you want to learn Haskell by looking at how it is used to solve a programming kata? Take a seat and follow our little haskellers while they build a very elegant solution to find the winner of a poker game. You might even want to grab your keyboard and give it a try!
What if the computer could write tests for us, with some guidance from us? There are many reasons to learn Haskell. QuickCheck was one of the main reasons for me. Knowing how to use it in anger requires some muscle memory. Muscle memory can be grown by doing some exercises. This book provides those exercises. I've tried learning QuickCheck on a production application, but there is always something else, and little time to really get to the bottom of it.