SplinterOfChaos
SplinterOfChaos

Reputation: 489

Haskell: How does MonadState's put work?

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?

Upvotes: 2

Views: 200

Answers (1)

hzap
hzap

Reputation: 1193

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

Upvotes: 10

Related Questions