Вопрос

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?

Это было полезно?

Решение

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top