Programming with Comonads and Codo Notation
- 👤 Speaker: Dominic Orchard, Computer Lab
- 📅 Date & Time: Friday 13 May 2011, 15:00 - 16:00
- 📍 Venue: GC22, Computer Laboratory
Abstract
The category theory structure of a monad fortuitously matches the underlying structure of many different notions of impure computation such as input/output effects, partiality, state, non-determinism, and more. Thus, monads can be used in semantics and programming as a useful abstraction mechanism, and have been used enthusiastically as such for the last two decades.
The dual of monads, comonads, similarly provides an abstraction mechanism that captures the underlying structure of a class of computations often described as contextual, or context-dependent. Comonads have not however been as enthusiastically embraced in the functional programming community although there has recently been several illuminating examples of their use.
This talk seeks to promote programming with comonads: reviewing existing use, proffering new examples, and contributing a convenient syntax (codo-notation) for programming that is dual to Haskell’s do-notation. As an example, we embed the dataflow language Lucid into Haskell.
Series This talk is part of the Computer Laboratory Programming Research Group Seminar series.
Included in Lists
- All Talks (aka the CURE list)
- bld31
- Cambridge talks
- Computer Laboratory Programming Research Group Seminar
- Department of Computer Science and Technology talks and seminars
- GC22, Computer Laboratory
- Interested Talks
- School of Technology
- Trust & Technology Initiative - interesting events
- yk449
Note: Ex-directory lists are not shown.
![[Talks.cam]](/static/images/talkslogosmall.gif)


Friday 13 May 2011, 15:00-16:00