Varmo Vene: Signals and Comonads
We propose a novel, comonadic approach to dataflow (stream-based)
computation. This is based on the observation that both general
and causal stream functions can be characterized as coKleisli
arrows of comonads and on the intuition that comonads in general
must be a good means to structure context-dependent computation.
In particular, we develop a generic comonadic interpreter of
languages for context-dependent computation and instantiate it
for stream-based computation. We also discuss distributive laws
of a comonad over a monad as a means to structure combinations of
effectful and context-dependent computation. We apply the latter
to analyse clocked dataflow (partial streams based) computation.