Functional Programming and Input/Output
by Andrew D. Gordon 2021-02-02 22:14:50
image1
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 t... Read more
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. Less
  • ISBN
  • 9780521070072
Compare Prices
Available Discount
No Discount available
Related Books