Introduction
In functional programming, functions are first class values. It means that functions can be returned as values, and one can pass functions as arguments. In this chapter, we will start with recursive functions and gradually move to higher order functions, functions that take other functions as arguments. Our goal is to be able to write functions that are correct and tested. Haskell is a lazy language. We can take advantage of this fact, and write interesting and compact functions to take advantage of its laziness.
We will start with recursive functions, and see how recursion works. We will then move to tail recursive functions. We will explore a useful worker pattern while working with tail recursion. Next we will take advantage ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access