Elements of functional programming - Reade, Chris (Addison-Wesley, 1989)