Indeed there is!
https://arxiv.org/abs/1209.1011
Kleisli Database Instances
David I. Spivak
We use monads to relax the atomicity requirement for data in a database. Depending on the choice of monad, the database fields may contain generalized values such as lists or sets of values, or they may contain exceptions such as various types of nulls. The return operation for monads ensures that any ordinary database instance will count as one of these generalized instances, and the bind operation ensures that generalized values behave well under joins of foreign key sequences. Different monads allow for vastly different types of information to be stored in the database. For example, we show that classical concepts like Markov chains, graphs, and finite state automata are each perfectly captured by a different monad on the same schema.
PS There’s also a “traditional” answer to this question, which is that monad comprehension calculi also work with probability monads, not only collection monads. For example you can interpret Grust’s monad comprehension calculus in a bunch of monads.
> --
> You received this message because you are subscribed to the Google Groups "Categorical Data" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
categoricalda...@googlegroups.com.
> To view this discussion visit
https://groups.google.com/d/msgid/categoricaldata/8da77274-e181-4c88-a818-e30651cbf074n%40googlegroups.com.