Fundamentals of Functional Programming (in Clean)