Sciweavers

FP
1992

High Level Specification of I/O in Functional Languages

13 years 8 months ago
High Level Specification of I/O in Functional Languages
The interface with the outside world has always been one of the weakest points of functional languages. It is not easy to incorporate I/O without being allowed to do side-effects. Furthermore, functional languages allow redexes to be evaluated in any order while I/O generally has to be performed in a very specific order. In this paper we present a new solution for the I/O problem which we have incorporated in the language Concurrent Clean. Concurrent Clean offers a linear type system called Unique Types. It makes it possible to define functions with side-effects without violating the functional semantics. Now it is possible to change any object in the world in the way we wanted: e.g. arrays can be updated in-situ, arbitrary file manipulation is possible. We have used this powerful tool among others to create a library for window based I/O. Using an explicit environment passing scheme provides a high-level and elegant functional specification method for I/O, called Event I/O. Now the s...
Peter Achten, John H. G. van Groningen, Marinus J.
Added 10 Aug 2010
Updated 10 Aug 2010
Type Conference
Year 1992
Where FP
Authors Peter Achten, John H. G. van Groningen, Marinus J. Plasmeijer
Comments (0)