Identityモナド
何もしない
Monad型クラス
「恒等モナド」とも呼ばれる
モナドに於ける
単位元
のようなもの
作用させても何も変わらない
モナド変換子
を使うときなどに使用する
実装
code:hs
newtype Identity a = Identity { runIdentity :: a }
instance Monad Identity where
return = Identity
Identity x >>= f = f x
bindはただの関数適用
import
import Data.Functor.Identity
関数
runIdentity
値を取り出す
参考
Haskell モナド変換子 超入門 - Qiita