Journal article
Monads for behaviour
- Abstract:
-
The monads used to model effectful computations traditionally concentrate on the 'destination'—the final results of the program. However, sometimes we are also interested in the 'journey'—the intermediate course of a computation—especially when reasoning about non-terminating interactive systems. In this article we claim that a necessary property of a monad for it to be able to describe the behaviour of a program is complete iterativity. We show how an ordinary monad can be modified to disclose more about its internal computational behaviour, by applying an associated transformer to a completely iterative monad. To illustrate this, we introduce two new constructions: a coinductive cousin of Cenciarelli and Moggi's generalised resumption transformer, and States—a State-like monad that accumulates the intermediate states.
- Publication status:
- Published
- Peer review status:
- Peer reviewed
Actions
Access Document
- Files:
-
-
(Preview, Version of record, pdf, 313.7KB, Terms of use)
-
- Publisher copy:
- 10.1016/j.entcs.2013.09.019
Authors
- Journal:
- Electronic Notes in Theoretical Computer Science More from this journal
- Volume:
- 298
- Pages:
- Pages 309–324
- Publication date:
- 2013-01-01
- Edition:
- Publisher's version
- DOI:
- ISSN:
-
1571-0661
- Language:
-
English
- Keywords:
- Subjects:
- UUID:
-
uuid:fcc9dfef-2b90-4132-9d90-8f2669169351
- Local pid:
-
ora:9903
- Deposit date:
-
2015-02-04
- ARK identifier:
Terms of use
- Copyright holder:
- Elsevier
- Copyright date:
- 2013
- Notes:
- © 2013 Elsevier B.V.
If you are the owner of this record, you can report an update to it here: Report update to this record