February 2018
Intermediate to advanced
304 pages
7h 11m
English
Before we get to laziness, we first need to delve into recursion as an approach to enumerating sequences of values.
Functional programs make great use of recursive definitions. A recursive definition consists of two parts:
Our challenge in this section is converting a recursive definition into working code. You might do this in several ways:
A simple recursion, using a function that calls itself in some way to implement the induction step.
A tail recursion, using a function calling itself only at the tail end of its execution. Tail recursion enables an ...