Practical Haskell: A Real-World Guide to Functional Programming, 3rd Edition

  • 9h 46m
  • Alejandro Serrano Mena
  • Apress
  • 2022

Get a practical, hands-on introduction to the Haskell language, its libraries and environment, and to the functional programming paradigm that is fast growing in importance in the software industry. This updated edition includes more modern treatment of Haskell's web framework and APIs.

This book contains excellent coverage of the Haskell ecosystem and supporting tools, including Cabal and Stack for managing projects, HUnit and QuickCheck for software testing, WAI and Elm to develop the back end and front end of web applications, Persistent and Esqueleto for database access, and parallel and distributed programming libraries.

You’ll see how functional programming is gathering momentum, allowing you to express yourself in a more concise way, reducing boilerplate, and increasing the safety of your code. Haskell is an elegant and noise-free pure functional language with a long history, having a huge number of library contributors and an active community.

This makes Haskell the best tool for both learning and applying functional programming, and Practical Haskell takes advantage of this to show off the language and what it can do. Free source code available on the Apress GitHub page for this book.

You will:

  • Get started programming with Haskell
  • Examine the different parts of the language
  • Gain an overview of the most important libraries and tools in the Haskell ecosystem
  • Apply functional patterns in real-world scenarios
  • Understand monads and monad transformers
  • Proficiently use laziness and resource management

About the Author

Alejandro Serrano Mena has more than a decade of experience as a developer, trainer, and researcher in functional programming, with an emphasis on Haskell and related languages. He holds a Ph.D. from Utrecht University on the topic of error message customization in compilers. He's an active member of the community, maintaining a few open-source projects, writing books about Haskell, and collaborating on podcasts and conferences.

In this Book

  • Introduction
  • Going Functional
  • Declaring the Data Model
  • Increasing Code Reuse
  • Using Containers and Type Classes
  • Laziness and Infinite Structures
  • Knowing Your Clients Using Monads
  • More Monads—Now for Recommendations
  • Working in Several Cores
  • Dealing with Files—IO and Conduit
  • Building and Parsing Text
  • Safe Database Access
  • Web Applications
  • Strong Types for Describing Offers
  • Interpreting Offers with Attributes
  • Documenting, Testing, and Verifying
  • Architecting Your Application
  • Looking Further
SHOW MORE
FREE ACCESS