|
Functional Programming with Side Effects
Mark B Josephs
D.Phil. thesis, June 1986, 101 pages,
ISBN 0-902928-36-8
In this thesis functional and logic programming languages are
combined into a new declarative language. This allows for lazy
single assignment to logical variables in an otherwise purely
functional language. Efficient solutions to various programming
problems are developed. It is also shown that these programs with
side-effects can be derived by means of transformational programming.
On implementations that support parallelism, further interesting
possibilities arise.
The formal semantics of this extension to
functional programming is investigated. Both denotational and axiomatic
semantic descriptions of the language are presented. Programming with
side-effects is particularly attractive because it can be supported by
graph reduction based implementations of functional programming
languages. Details of a prototype implementation are given.
|