This library maps datatypes to a relational model, in a way similar to what ORM libraries do in OOP. See the tutorial https://www.schoolofhaskell.com/user/lykahb/groundhog for introduction
It's looking like the ecosystem is moving away from MonadBaseControl IO and towards MonadUnliftIO, e.g. resourcet has completely moved over. It seems a lot easier to reason about and maps cleanly onto reader monad transformer stacks. One potential downside is that by design it isn't meant to be used in monads with non-deterministic exit points like ExceptT or StateT but I don't think that should be relevant to this library. I'm wondering if you'd be amenable to a PR that would try to exchange MonadBaseControl IO for MonadUnliftIO across the board. There's more documentation about it here. Thanks!
It's looking like the ecosystem is moving away from
MonadBaseControl IO
and towardsMonadUnliftIO
, e.g. resourcet has completely moved over. It seems a lot easier to reason about and maps cleanly onto reader monad transformer stacks. One potential downside is that by design it isn't meant to be used in monads with non-deterministic exit points likeExceptT
orStateT
but I don't think that should be relevant to this library. I'm wondering if you'd be amenable to a PR that would try to exchangeMonadBaseControl IO
forMonadUnliftIO
across the board. There's more documentation about it here. Thanks!