Copyright | (c) 2023 Yamada Ryo |
---|---|
License | MPL-2.0 (see the file LICENSE) |
Maintainer | ymdfield@outlook.jp |
Stability | experimental |
Portability | portable |
Safe Haskell | Safe-Inferred |
Language | GHC2021 |
Control.Monad.Freer.Church
Description
A Church-encoded Freer monad.
Synopsis
- newtype FreerChurch f a = FreerChurch {
- unFreerChurch :: FT f Identity a
- liftInsChurch :: ins a -> FreerChurch ins a
- interpretChurch :: Monad m => (ins ~> m) -> FreerChurch ins a -> m a
- interpretChurchK :: (e ~> Cont r) -> FreerChurch e ~> Cont r
Documentation
newtype FreerChurch f a Source #
A Church encoded Freer monad.
Constructors
FreerChurch | |
Fields
|
Instances
liftInsChurch :: ins a -> FreerChurch ins a Source #
interpretChurch :: Monad m => (ins ~> m) -> FreerChurch ins a -> m a Source #
interpretChurchK :: (e ~> Cont r) -> FreerChurch e ~> Cont r Source #