  A point process on a space is a random bag of elements of that space. In this
paper we explore programming with point processes in a monadic style. To this
end we identify point processes on a space X with probability measures of bags
of elements in X. We describe this view of point processes using the
composition of the Giry and bag monads on the category of measurable spaces and
functions and prove that this composition also forms a monad using a
distributive law for monads. Finally, we define a morphism from a point process
to its intensity measure, and show that this is a monad morphism. A special
case of this monad morphism gives us Wald's Lemma, an identity used to
calculate the expected value of the sum of a random number of random variables.
Using our monad we define a range of point processes and point process
operations and compositionally compute their corresponding intensity measures
using the monad morphism.
