letrec + typechecking core

This commit is contained in:
crumbtoo
2024-02-08 18:40:46 -07:00
parent a2b4bd2afc
commit 17058d3f8c
6 changed files with 47 additions and 24 deletions

View File

@@ -8,6 +8,7 @@ module Control.Monad.Errorful
, errorful
, runErrorful
, mapErrorful
, hoistErrorfulT
, MonadErrorful(..)
)
where
@@ -74,6 +75,9 @@ mapErrorful f (ErrorfulT m) = ErrorfulT $
-- mapErrorful f = coerced . mapped . _2 . mapped %~ f
-- lol
hoistErrorfulT :: (forall a. m a -> n a) -> ErrorfulT e m a -> ErrorfulT e n a
hoistErrorfulT nt (ErrorfulT m) = ErrorfulT (nt m)
--------------------------------------------------------------------------------
-- daily dose of n^2 instances