Skip to product information
1 of 1
Regular price £30.99 GBP
Regular price £33.99 GBP Sale price £30.99 GBP
Sale Sold out
Free UK Shipping

Freshly Printed - allow 3 days lead

Programming in Haskell

This extensively updated and expanded version of the best-selling first edition now covers recent and more advanced features of Haskell.

Graham Hutton (Author)

9781316626221, Cambridge University Press

Paperback / softback, published 1 September 2016

318 pages, 1 b/w illus. 120 exercises
24.6 x 17.4 x 1.7 cm, 0.56 kg

Review of previous edition: 'Where this book excels is in the order and style of its exposition … With its ripe selection of examples and its careful clarity of exposition, the book is a welcome addition to the introductory functional programming literature.' Journal of Functional Programming

Haskell is a purely functional language that allows programmers to rapidly develop clear, concise, and correct software. The language has grown in popularity in recent years, both in teaching and in industry. This book is based on the author's experience of teaching Haskell for more than twenty years. All concepts are explained from first principles and no programming experience is required, making this book accessible to a broad spectrum of readers. While Part I focuses on basic concepts, Part II introduces the reader to more advanced topics. This new edition has been extensively updated and expanded to include recent and more advanced features of Haskell, new examples and exercises, selected solutions, and freely downloadable lecture slides and example code. The presentation is clean and simple, while also being fully compliant with the latest version of the language, including recent changes concerning applicative, monadic, foldable, and traversable types.

Foreword
Preface
Part I. Basic Concepts: 1. Introduction
2. First steps
3. Types and classes
4. Defining functions
5. List comprehensions
6. Recursive functions
7. Higher-order functions
8. Declaring types and classes
9. The countdown problem
Part II. Going Further: 10. Interactive programming
11. Unbeatable tic-tac-toe
12. Monads and more
13. Monadic parsing
14. Foldables and friends
15. Lazy evaluation
16. Reasoning about programs
17. Calculating compilers
Appendix A. Selected solutions
Appendix B. Standard prelude
Bibliography
Index.

Subject Areas: Mathematical theory of computation [UYA], Programming & scripting languages: general [UMX], Numerical analysis [PBKS]

View full details