Our systems are now restored following recent technical disruption, and we’re working hard to catch up on publishing. We apologise for the inconvenience caused. Find out more

Recommended product

Popular links

Popular links


The Haskell School of Expression

The Haskell School of Expression

The Haskell School of Expression

Learning Functional Programming through Multimedia
Paul Hudak, Yale University, Connecticut
February 2000
Paperback
9780521644082

Experience the eBook and the associated online resources on our new Higher Education website. Go to site For other formats please stay on this page.

    Functional programming is a style of programming that emphasizes the use of functions (in contrast to object-oriented programming, which emphasizes the use of objects). It has become popular in recent years because of its simplicity, conciseness, and clarity. This book teaches functional programming as a way of thinking and problem solving, using Haskell, the most popular purely functional language. Rather than using the conventional (boring) mathematical examples commonly found in other programming language textbooks, the author uses examples drawn from multimedia applications, including graphics, animation, and computer music, thus rewarding the reader with working programs for inherently more interesting applications. Aimed at both beginning and advanced programmers, this tutorial begins with a gentle introduction to functional programming and moves rapidly on to more advanced topics. Details about progamming in Haskell are presented in boxes throughout the text so they can be easily found and referred to.

    • Emphasis is on thinking and problem solving in the functional style, boxes contain details of programming style
    • Examples are drawn from multimedia applications: graphics, animation, and computer music
    • Author is one of the designers of the Haskell language

    Reviews & endorsements

    '… a rather unusual and very interesting book for the functional programming community. The author's style is wonderful, and he is good at explaining the material … unique in the field of functional programming'. M. Ivanovi´c, Artificial Intelligence

    '… a novel and intuitively appealing approach to teaching functional programming … could profitably be used for an advanced undergraduate course focusing on domain-specific languages in this area.' Journal of Functional Programming

    See more reviews

    Product details

    February 2000
    Paperback
    9780521644082
    382 pages
    254 × 178 × 20 mm
    0.63kg
    15 b/w illus. 75 exercises
    Available

    Table of Contents

    • 1. Problem solving, programming and calculation
    • 2. A module of shapes: part I
    • 3. Simple graphics
    • 4. Shapes II: drawing shapes
    • 5. Polymorphic and higher-order functions
    • 6. Shapes III: perimeters of shapes
    • 7. Trees
    • 8. A module of regions
    • 9. More about higher-order functions
    • 10. Drawing regions
    • 11. Proof by induction
    • 12. Qualified types
    • 13. A module of simple animations
    • 14. Programming with streams
    • 15. A module of reactive animations
    • 16. Communicating with the outside world
    • 17. Rendering reactive animations
    • 18. Higher-order types
    • 19. An imperative robot language
    • 20. Functional music composition
    • 21. Algebraic properties of multimedia
    • 22. Interpreting functional music
    • 23. A tour of the prelude list module
    • 24. A Tour of Haskell's standard type classes.