Haskell: The Craft of Functional Programming (2nd Edition)
PROGRAMMING LANGUAGES / FUNCTIONAL PROGRAMMING / HASKELLHaskellThe Craft of Functional Programming Second EditionSimon ThompsonThe second edition of Haskell: The Craft of Functional Programming is essential reading for beginners to functional programming and newcomers to the Haskell programming language. The emphasis is on the process of crafting programs and the text contains many examples and running case studies, as well as advice on program design, testing, problem solving and how to avoid common pitfalls.Building on the strengths of the first edition, the book includes many new and improved features:· Complete coverage of Haskell 98, the standard version of Haskell which will be stable and supported by implementations for years to come.· An emphasis on software engineering principles, encouraging a disciplined approach to building reusable libraries of software components.· Detailed coverage of the Hugs interpreter with an appendix covering other implementations.· A running case study of pictures emphasizes the built-in functions which appear in the standard prelude and libraries. It is also used to give an early preview of some of the more complex language features, such as higher-order functions.· List comprehensions and the standard functions over lists are covered before recursion.· Early coverage of polymorphism supporting the `toolkit' approach and encouraging the reuse of built-in functions and types.· Extensive reference material containing details of further reading in books, journals and on the World Wide Web.· Accompanying Web Site supporting the book, containing all the program code, further teaching materials and other useful resources.About the authorSimon Thompson is a Senior Lecturer in the Computing Laboratory at the University of Kent. His research and teaching interests include functional programming and logical aspects of computer science. Simon has written two other books: Miranda: The Craft of Functional Programming and Type Theory and Functional Programming.