About This Book
- Explore Haskell on a higher level through idioms and patterns
- Get an in-depth look into the three strongholds of Haskell: higher-order functions, the Type system, and Lazy evaluation
- Expand your understanding of Haskell and functional programming, one line of executable code at a time
Who This Book Is For
If you're a Haskell programmer with a firm grasp of the basics and ready to advance to modern idiomatic Haskell programming, then this book is for you.
What You Will Learn
- Understand the relationship between the "Gang of Four" OOP Design Patterns and Haskell
- Experience three ways of Streaming I/O: imperative, Lazy, and Iteratee-based
- Explore the pervasive pattern of composition, from function composition through to high-level composition with Lenses
- Synthesize Functor, Applicative, Arrow and Monad in a single conceptual framework
- Follow the grand arc of Fold and Map on lists all the way to their culmination in Lenses and Generic Programming
- Retrace the evolution, one key language extension at a time, of the Haskell Type and Kind systems
- Get a taste of Type-level programming in Haskell and how this relates to Dependently-typed programming
- Place the elements of Modern Haskell in a historical framework
Design patterns and idioms can widen our perspective by showing us where to look, what to look at, and ultimately how to see what we are looking at. At their best, patterns are a shorthand method of communicating better ways to code (writing less, more maintainable, and more efficient code).
This book starts with Haskell 98 and, through the lens of patterns and idioms, investigates the key advances and programming styles that together makeup "Modern Haskell". Your journey begins with the three pillars of Haskell. Then you'll experience the problem with Lazy I/O, together with a solution. You'll also trace the hierarchy formed by Functor, Applicative, Arrow, and Monad. Next, you'll explore how Fold and Map are generalized by Foldable and Traversable, which in turn are unified in a broader context by Functional Lenses. You'll delve more deeply into the Type system, which will prepare you for an overview of Generic Programming. Finally, you go to the edge of Haskell by investigating the Kind system and how this relates to Dependently-typed programming.
To view this DRM protected ebook on your desktop or laptop you will need to have Adobe Digital Editions installed. It is a free software. We also strongly recommend that you sign up for an AdobeID at the Adobe website. For more details please see FAQ 1&2. To view this ebook on an iPhone, iPad or Android mobile device you will need the Adobe Digital Editions app, or BlueFire Reader or Txtr app. These are free, too. For more details see this article.
|Size: ||1.0 MB|
|Publisher: ||Packt Publishing|
|Date published: || 2015|
|ISBN: ||9781783988730 (DRM-EPUB)|
|Read Aloud: ||not allowed|