Functional Programming and Input/Output

Functional Programming and Input/Output

by Andrew D. Gordon
Pub. Date:
Cambridge University Press

Hardcover - Rent for

Select a Purchase Option
  • purchase options

Temporarily Out of Stock Online


Functional Programming and Input/Output

A common attraction to functional programming is the ease with which proofs can be given of program properties. A common disappointment with functional programming is the difficulty of expressing input/output (I/O) while at the same time being able to verify programs. Here, the author shows how a theory of functional programming can be smoothly extended to admit both an operational semantics for functional I/O and verification of programs engaged in I/O. He obtains, for the first time, operational semantics for the three most widely implemented I/O mechanisms for lazy languages, and proves that the three are equivalent in expressive power. He also develops semantics for a form of monadic I/O and verifies a simple programming example. These theories of functional I/O are based on an entirely operational theory of functional programming, developed using Abramsky's "applicative bisimulation." Graduate students and researchers will gain much from reading this book.

Product Details

ISBN-13: 9780521471039
Publisher: Cambridge University Press
Publication date: 10/28/1994
Series: Distinguished Dissertations in Computer Science Series , #8
Pages: 171
Product dimensions: 6.85(w) x 9.72(h) x 0.55(d)

Table of Contents

Preface; 1. Introduction; 2. A calculus of recursive types; 3. A metalanguage for semantics; 4. Operational precongruence; 5. Theory of the metalanguage; 6. An operational theory of functional programming; 7. Four mechanisms for teletype I/O; 8. Monadic I/O; 9. Conclusion; Bibliography; Notation; Index.

Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews