Sciweavers

ICFP
2002
ACM

Monads for incremental computing

14 years 11 months ago
Monads for incremental computing
This paper presents a monadic approach to incremental computation, suitable for purely functional languages such as Haskell. A program that uses incremental computation is able to perform an incremental amount of computation to accommodate for changes in input data. Recently, Acar, Blelloch and Harper presented a small Standard ML library that supports efficient, high-level incremental computations [1]. Here, we present a monadic variant of that library, written in Haskell extended with first-class references. By using monads, not only are we able to provide a purely functional interface to the library, the types also enforce "correct usage" without having to resort to any type-system extension. We also find optimization opportunities based on standard monadic combinators. This is an exercise in putting to work monad transformers with environments, references, and continuations. Categories and Subject Descriptors D.1 [Software]: Programming Techniques General Terms Algorithm...
Magnus Carlsson
Added 13 Dec 2009
Updated 13 Dec 2009
Type Conference
Year 2002
Where ICFP
Authors Magnus Carlsson
Comments (0)