BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Talks.cam//talks.cam.ac.uk//
X-WR-CALNAME:Talks.cam
BEGIN:VEVENT
SUMMARY:Programming with Comonads and Codo Notation - Dominic Orchard\, Co
 mputer Lab
DTSTART:20110513T140000Z
DTEND:20110513T150000Z
UID:TALK31418@talks.cam.ac.uk
CONTACT:Dominic Orchard
DESCRIPTION:The category theory structure of a monad fortuitously matches 
 the underlying structure of many different notions of impure computation s
 uch as input/output effects\, partiality\, state\, non-determinism\, and m
 ore. Thus\, monads can be used in semantics and programming as a useful ab
 straction mechanism\, and have been used enthusiastically as such for the 
 last two decades.\n\nThe dual of monads\, comonads\, similarly provides an
  abstraction mechanism that captures the underlying structure of a class o
 f computations often described as contextual\, or context-dependent. Comon
 ads have not however been as enthusiastically embraced in the functional p
 rogramming community although there has recently been several illuminating
  examples of their use.\n\nThis talk seeks to promote programming with com
 onads: reviewing existing use\, proffering new examples\, and contributing
  a convenient syntax (codo-notation) for programming that is dual to Haske
 ll’s do-notation. As an example\, we embed the dataflow language Lucid i
 nto Haskell.\n
LOCATION:GC22\, Computer Laboratory
END:VEVENT
END:VCALENDAR
