suggestion: A common type class for mutable variables
bertram.felgenhauer at googlemail.com
Sun Jun 9 17:48:02 CEST 2013
Henning Thielemann wrote:
> On Mon, 3 Jun 2013, Edward Kmett wrote:
> >The first option is
> >class Monad m => MonadRef r m | m -> r where
> > newRef :: a -> m (r a)
> > ...
> I thought the functional dependency should be the other way round:
> From the reference type to the monad where it lives in.
You can have it both ways.
class Monad m => RefM m r | m -> r, r -> m where
-- | Create a new reference.
newRef :: a -> m (r a)
More information about the Libraries