anoma / juvix

A language for intent-centric and declarative decentralised applications
https://docs.juvix.org
GNU General Public License v3.0
449 stars 54 forks source link

Add `ExceptT`, `MonadError`, `MonadTrans` as a test #2880

Closed janmasrovira closed 2 months ago

janmasrovira commented 2 months ago

This pr explores the option to implement error handling in Juvix à la mtl. It adds the following as a test:

  1. MonadError trait.
  2. MonadTrans trait.
  3. ExceptT monad transformer and its Functor, Monad, MonadTrans, MonadError instances.