Introduction to functional programming - Bird, Richard 1943- (Prentice Hall international series in computer science), 1988)