Modularity and Dyads
John Power, E. Powell Robinson · Electronic Notes in Theoretical Computer Science · 1999
We study modularity in denotational semantics. We define the notion of a dyad, generalising the notion of monad, and we define the notion of symmetric premonoidal dyad, generalising the notion of strong monad. We show how dyads give rise to semantic categories for modelling computational effects, generalising the Kleisli construction for a monad, and we show that symmetric premonoidal dyads give a symmetric premonoidal structure on the semantic category, allowing us to model contexts. We give an outline, supported by technical results, how this may be used to give a modular account of adding computational effects to the semantics of an idealised programming language.