kirancodes.me
To Proof Maintenance & Beyond!

Imperative Streams - A Monadic Combinator Library for Synchronous Programming

Enno Scholz

Abstract

The paper presents a generalization of Haskell's IO monad suitable for synchronous concurrent programming. The new monad integrates the deterministic concurrency paradigm of synchronous programming with the powerful abstraction features of functional languages and with full support for imperative programming. For event-driven applications, it offers an alternative to the use of existing, thread-based concurrency extensions of functional languages. The concepts presented have been applied in practice in a framework for programming interactive graphics.

Related papers