A Framework for Deterministically Interleaved Interactive Programs in the Functional Programming Language Clean Peter Achten and Rinus Plasmeijer Computing Science Institute, University of Nijmegen, Toernooiveld 1, 6525ED, Nijmegen, the Netherlands (e-mail: peter88@cs.kun.nl, rinus@cs.kun.nl) Abstract In this paper we present a functional interleaved Event I/O system. This system is a generalization of the Event I/O system as incorporated into the lazy, purely functional programming language Clean. The Interleaved Event I/O system offers features that are more commonly found outside the functional scene. These features are dynamic process creation, and two well-known forms of inter-process communication: asynchronous message passing, and data sharing. Both forms of communication are polymorphic and type-safe. As we are working in a functional language, messages can contain higher-order functions and arbitrarily complex algebraic types. Communication by data sharing is a restricted form of communication by global data structures. Nevertheless, the new system is still completely functional because the generalization is done within the pure functional framework. The Interleaved Event I/O system has been implemented and will become part of the new release of Clean.