BSD-3-Clause licensed by Anton Kholomiov, Edward Kmett, Oleg Grenrus
Maintained by <[email protected]>
This version can be pinned in stack with:data-fix-0.3.2@sha256:bdea17f6b17c1d327f53ae6806e1bc3ca7813b46742a93c6088c72837c8ae77c,1706

Module documentation for 0.3.2

Fixpoint types and recursion schemes. If you define your AST as fixpoint type, you get fold and unfold operations for free.

Thanks for contribution to: Matej Kollar, Herbert Valerio Riedel

Changes

0.3.2

  • Add (un)wrapFix/Mu/Nu
  • Support transformers-0.6

0.3.1

  • Update bounds for GHC-9.0

0.3.0

  • Rename cata, ana and hylo into foldFix, unfoldFix and `refold. Old names are now deprecated, and will be eventually removed. Similarly, rename monadic variants.
  • Add hoistFix and hoistFix' function.
  • Add Hashable and NFData instance. Latter is available only with deepseq >=1.4.3.0, which provides NFData1 type-class
  • Change Eq, Ord, Show and Read instances to use Eq1, Ord1, Show1 and Read1 instances of a base functor.
  • Add least and greatest fixed point types, Mu and Nu.
  • Drop requirement for Applicative m in monadic combinators, Monad m is enough.
  • Remove ~> alias for refold (hylo).
  • Extend the GHC support window. There is nothing magical in this package.
  • Mark Data.Fix as Trustworthy (Safe Haskell)
  • Make refold (and refoldM) more efficient. This results in different effect ordering for refoldM.