|COOKIES: By using this website you agree that we can place Google Analytics Cookies on your device for performance monitoring.|
When Monads and Comonads Overlap
If you have a question about this talk, please contact Dominic Orchard.
Note unusual time and room.
The category theory structures of monads, and their dual comonads, can be used in semantics and programming as abstraction mechanisms, or essentially as design patterns. Monads provide abstraction, or structure, over a class of computations with a common pattern which includes many impure notions of computation. Comonads provide abstraction over another class of computations which includes many contextual notions of computation. Interestingly, these two classes appear non-mutually exclusive: there are some computations that can be structured by either a monad or a comonad. For example, parameter passing can be structured by a reader monad or product comonad. In this talk we formalise the class of computations which is at the intersection between those structured by a monad and those structured by a comonad. Furthermore, using monads/comonads as a design pattern, we show how to derive a more appropriate structure when a particular monad or comonad abstraction falls short of capturing all aspects of a computation and examine how to chose between using a monad or a comonad when designing a program. Examples include the Wadge’s monadic semantics for the Lucid dataflow language vs. Uustalu and Vene’s comonadic approach ten years later.
This talk is part of the Computer Laboratory Programming Research Group Seminar series.
This talk is included in these lists:
Note that ex-directory lists are not shown.
Other listsCambridge Philosophical Society Type the title of a new list here Synthetic Biology
Other talksAnnual General Meeting The Game of Crime and Punishment A model for selection of eyespots on butterfly wings Leadership, Authority and Legitimation in South Asia ContentMine CMunity Meetup Novel Modes of Cellular Communication: From Specialized Ribosomes to Signaling Filopodia