Haskell Cookbook
- Length: 436 pages
- Edition: 1
- Language: English
- Publisher: Packt Publishing
- Publication Date: 2017-11-06
- ISBN-10: 1786461358
- ISBN-13: 9781786461353
- Sales Rank: #1165579 (See Top 100 Books)
Key Features
- Comprehensive guide for establishing a strong foundation in Haskell and developing pragmatic code
- Create a full fledged web application using Haskell
- Work with Lens, Haskell Extensions, and write code for concurrent and distributed applications
Book Description
Haskell is a purely functional language that has the great ability to develop large and difficult, but easily maintainable software.
Haskell Cookbook provides recipes that start by illustrating the principles of functional programming in Haskell, and then gradually build up your expertise in creating industrial-strength programs to accomplish any goal. The book covers topics such as Functors, Applicatives, Monads, and Transformers. You will learn various ways to handle state in your application and explore advanced topics such as Generalized Algebraic Data Types, higher kind types, existential types, and type families. The book will discuss the association of lenses with type classes such as Functor, Foldable, and Traversable to help you manage deep data structures.
With the help of the wide selection of examples in this book, you will be able to upgrade your Haskell programming skills and develop scalable software idiomatically.
What you will learn
- Use functional data structures and algorithms to solve problems
- Understand the intricacies of the type system
- Create a simple parser for integer expressions with additions
- Build high-performance web services with Haskell
- Master mechanisms for concurrency and parallelism in Haskell
- Perform parsing and handle scarce resources such as filesystem handles
- Organize your programs
Table of Contents
Chapter 1. Foundations of Haskell
Chapter 2. Getting Functional
Chapter 3. Defining Data
Chapter 4. Working with Functors, Applicatives, and Monads
Chapter 5. More about Monads
Chapter 6. Working with Common Containers and Strings
Chapter 7. Working with Relational and NoSQL Databases
Chapter 8. Working with HTML and Templates
Chapter 9. Working with Snap Framework
Chapter 10. Working with Advanced Haskell
Chapter 11. Working with Lens and Prism
Chapter 12. Concurrent and Distributed Programming in Haskell