2009/7/7 Matthias Görgens <matthias.goerg...@googlemail.com>

> >> What I wondered was, if one could hid the random plumbing in some data
> >> structure, like the state monad, but less linear.
> >
> > This problem cries for a State monad solution - but you don't need to
> > do it yourself, there's already a Random monad defined for you.
>
> Yes, but I only need the random values inside splitOnMedia.  The rest
> is just non-linear plumbing.  We do not know beforehand how many
> random values a branch quicksort will consume --- neither do we ware
> about the state of the random generator at the end.  Do you consider
> the RandomMonad the best fit?


Random monad is a very natural choice for "random cloud" computations.
 Don't think of it as a state monad -- that's an implementation detail.  You
can think of a value of type Random a as a "probability distribution of
a's"; and there are natural definitions for the monad operators on this
semantics.

I blogged about this a while ago:
http://lukepalmer.wordpress.com/2009/01/17/use-monadrandom/

Luke
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to