Soar with Haskell: The ultimate beginners' guide to mastering functional programming from the ground up

· Packt Publishing Ltd
Ebook
418
Pages
Ratings and reviews aren’t verified  Learn More

About this ebook

Build powerful software solutions and develop proficiency in Haskell, from understanding the foundational principles through to mastering advanced functional programming conceptsKey Features
  • Learn from an expert lecturer and researcher who knows all the ins and outs of Haskell
  • Develop a clear understanding of Haskell, from the basics through to advanced concepts
  • Get to grips with all the key functional programming techniques
  • Purchase of the print or Kindle book includes a free PDF eBook
Book DescriptionWith software systems reaching new levels of complexity and programmers aiming for the highest productivity levels, software developers and language designers are turning toward functional programming because of its powerful and mature abstraction mechanisms. This book will help you tap into this approach with Haskell, the programming language that has been leading the way in pure functional programming for over three decades. The book begins by helping you get to grips with basic functions and algebraic datatypes, and gradually adds abstraction mechanisms and other powerful language features. Next, you’ll explore recursion, formulate higher-order functions as reusable templates, and get the job done with laziness. As you advance, you’ll learn how Haskell reconciliates its purity with the practical need for side effects and comes out stronger with a rich hierarchy of abstractions, such as functors, applicative functors, and monads. Finally, you’ll understand how all these elements are combined in the design and implementation of custom domain-specific languages for tackling practical problems such as parsing, as well as the revolutionary functional technique of property-based testing. By the end of this book, you’ll have mastered the key concepts of functional programming and be able to develop idiomatic Haskell solutions.What you will learn
  • Write pure functions in all their forms – that is basic, recursive, and higher-order functions
  • Model your data using algebraic datatypes
  • Master Haskell’s powerful type-class mechanism for ad hoc overloading
  • Find out how Haskell’s laziness gets the job done
  • Reconcile Haskell’s functional purity with side effects
  • Familiarize yourself with the functor, applicative functor, monad hierarchy
  • Discover how to solve problems with domain-specific languages
  • Find more bugs with Haskell’s property-based testing approach
Who this book is for

If you are a programmer looking to gain knowledge of Haskell who’s never been properly introduced to functional programming, this book is for you. Basic experience with programming in a non-functional language is a prerequisite. This book also serves as an excellent guide for programmers with limited exposure to Haskell who want to deepen their understanding and foray further into the language.

About the author

Tom Schrijvers is a professor of computer science at KU Leuven in Belgium since 2014, and previously from 2011 until 2014 at Ghent University in Belgium. He has over 20 years of research experience in programming languages and has co-authored more than 100 scientific papers. Much of his research focuses on functional programming and on the Haskell programming language in particular: he has made many contributions to the language, its ecosystem and applications, and chaired academic events like the Haskell Symposium. At the same time, he has more than a decade of teaching experience (including functional programming with Haskell) and received several teaching awards.

Rate this ebook

Tell us what you think.

Reading information

Smartphones and tablets
Install the Google Play Books app for Android and iPad/iPhone. It syncs automatically with your account and allows you to read online or offline wherever you are.
Laptops and computers
You can listen to audiobooks purchased on Google Play using your computer's web browser.
eReaders and other devices
To read on e-ink devices like Kobo eReaders, you'll need to download a file and transfer it to your device. Follow the detailed Help Center instructions to transfer the files to supported eReaders.