University of Cambridge > Talks.cam > Computer Laboratory Programming Research Group Seminar > Programming with Comonads and Codo Notation

Programming with Comonads and Codo Notation

Add to your list(s) Download to your calendar using vCal

If you have a question about this talk, please contact Dominic Orchard.

Note unusual time and place

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.

This talk is part of the Computer Laboratory Programming Research Group Seminar series.

Tell a friend about this talk:

This talk is included in these lists:

Note that ex-directory lists are not shown.

 

© 2006-2019 Talks.cam, University of Cambridge. Contact Us | Help and Documentation | Privacy and Publicity