Question

http://hackage.haskell.org/packages/archive/mtl/1.1.0.2/doc/html/src/Control-Monad-State-Lazy.html

instance (Monad m) => MonadState s (StateT s m) where
    get   = StateT $ \s -> return (s, s)
    put s = StateT $ \_ -> return ((), s)

What does the () do in the definition of put?

Était-ce utile?

La solution

The () is the return value of the action. Since put is used for its side effect (change state), it doesn't return anything useful.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top