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 Functional Approach to Programming

The Functional Approach to Programming

The Functional Approach to Programming

Guy Cousineau, Ecole Normale Supérieure, Paris
Michel Mauny, Institut National de Recherche en Informatique et en Automatique (INRIA), Rocquencourt
K. Callaway
November 1998
Paperback
9780521576819
$92.99
USD
Paperback
USD
eBook

    A programming course should concentrate as much as possible on a program's logical structure and design rather than simply show how to write code. The Functional Approach to Programming achieves this aim because logical concepts are evident and programs are transparent so can be written quickly and cleanly. In this book the authors emphasise the notions of function and function application which relate programming to familiar concepts from mathematics and logic. They introduce functional programming via examples but also explain what programs compute and how to reason about them. They show how the ideas can be implemented in the Caml language, a dialect of the ML family, and give examples of how complex programs from a variety of areas (such as arithmetic, tree algorithms, graph algorithms, text parsing and geometry) can be developed in close agreement with their specifications. Many exercises and examples are included throughout the book; solutions are also available.

    • Motivated via examples; practical but well-founded approach
    • Contains exercises for which solutions are available
    • Code supplied for examples

    Reviews & endorsements

    "...a valuable contribution to programming practice...Cousineau and Mauny convincingly demonstrate the elegance and conciseness of the functional approach." Computing Reviews

    See more reviews

    Product details

    November 1998
    Paperback
    9780521576819
    460 pages
    246 × 189 × 24 mm
    0.82kg
    55 b/w illus.
    Available

    Table of Contents

    • Introduction
    • Part I. Basic Principles:
    • 1. Expressions
    • 2. Data structures
    • 3. Semantics
    • 4. Imperative aspects
    • Part II. Applications:
    • 5. Exact arithmetic
    • 6. Formal terms, filtering, and unification
    • 7. Balanced trees
    • 8. Graphs and problem resolution
    • 9. Syntactic analysis
    • 10. Geometry and designs
    • Part III. Implementation:
    • 11. Evaluation
    • 12. Compilation
    • 13. Types and typing
    • Appendix 1. Help for Caml Light 0.6
    • Appendix 2. How to Get Caml, MLgraph, and the examples
    • Bibliography
    • Index.