using the Haskell programming language. It introduces types and classes, function definitions, list comprehension, recursive and higher order functions, eager and lazy evaluation, and basic data types ...