Haskell Cookbook: Build functional applications using Monads, Applicatives, and Functors by Yogesh Sajanikar
English | 25 Sept. 2017 | ISBN: 1786461358 | ASIN: B073QW9LS3 | 396 Pages | AZW3 | 8.05 MB
English | 25 Sept. 2017 | ISBN: 1786461358 | ASIN: B073QW9LS3 | 396 Pages | AZW3 | 8.05 MB
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 by creating your own types and type classes
About the Author
Yogesh Sajanikar has received his bachelor's degree in Mechanical Engineering from Shivaji University, India, along with a gold medal and a master's degree in Production Engineering from the Indian Institute of Technology, Bombay, India.
Yogesh has an experience of more than 20 years, and he has extensively worked with Product Lifecycle Management (PLM) and Computer Aided Design (CAD) software development firms, and architected solutions for domains such as Construction and Shipping Domain.
Having hooked on to functional programming, he moved into the Finance domain and worked as an enterprise architect; he has also worked with Scala/F# and Haskell. Currently, he is working as a CTO for a startup. He has also started local Haskell meetups and has been an active participant in meetups and functional conferences.
Yogesh believes in the open source movement, and believes in giving back to the open source community.
Table of Contents
Foundation of Haskell
Getting Functional
Defining Data
Functors, Applicative, and Transformers
More about Monads
Common containers and strings
Working with relational and NoSQL Databases
Working with HTML and Templates
The Snap Framework
Working with Advanced Haskell
Lenses and Prisms
Concurrent and Distributed Programming