Skip to content

Fixed broken `MonadChoice` instance for `MonadRandom` types and improved dependency version compatability.

Lucy requested to merge next-version into master

Fixed broken MonadChoice instance for MonadRandom types and fixed, expanded, and fine tuned dependency version requirements.

Additions

  • UniformRandom
    • Created marker newtype UniformRandom that provides a MonadChoice instance for members of the MonadRandom typeclass.
    • Added functions lift and colift to wrap and unwrap UniformRandom, respectively.
    • Added instance for MonadChoice using uniform from the MoandRandom package when the wrapped monad is a member of the MonadRandom class.
    • Added various passthrough instances
      • Functor
      • Applicative
      • Monad
      • MonadRandom
      • MonadFix
      • MonadFail
      • Alternative
      • MonadPlus
      • MonadIO
      • Semigroup
      • Monoid
      • MonadError
      • MonadReader
      • MonadState
      • Foldable
      • Traversable
      • Eq1
      • Ord1
      • MonadZip
      • MonadCont
      • Eq
      • Ord
      • MonadRWS
      • MonadWriter
      • MonadSplit
      • PrimMonad
      • MonadInterleave

Removals

  • MonadChoice
    • Removed previous instance for members of the MonadRandom type class since it overlapped with all other MonadChoice instances.
    • Removed passthrough instances for constant space WriterT and RWST if transformers version is less than 0.5.6
Edited by Lucy

Merge request reports