Skip to content

v0.2.0

Choose a tag to compare

@justinelliottcobb justinelliottcobb released this 08 Mar 20:35
· 45 commits to main since this release
145e893

What's New

New crates

  • karpal-free — Free constructions: Coyoneda, Yoneda, Free Monad, Cofree Comonad, Freer, Day Convolution, FreeAp, FreeAlt, Kan extensions, Codensity, Density
  • karpal-recursion — Recursion schemes: Fix, Nu, cata, ana, hylo, para, apo, histo, futu, zygo, chrono
  • karpal-algebra — Abstract algebra: Group, AbelianGroup, Semiring, Ring, Field, Lattice, BoundedLattice, Module, VectorSpace

Major additions to existing crates

  • karpal-core — Newtype wrappers (Sum, Product, Min, Max, First, Last), tuple Semigroup/Monoid impls, Comonad hierarchy (ComonadEnv, ComonadStore, ComonadTraced), Contravariant hierarchy (Divide, Divisible, Decide, Conclude), Invariant, FunctorFilter, Selective
  • karpal-profunctor — Traversing trait, ForgetF, TaggedF
  • karpal-optics — Iso, Getter, Review, Setter, Traversal, Fold (was Lens + Prism only)

Infrastructure

  • 8 crates in the workspace (up from 5)
  • 614 property-based tests, all passing
  • All new crates are no_std compatible
  • Documentation site with 23 reference pages
  • READMEs for every crate
  • publish.yml updated for all 8 crates

Full changelog

v0.1.0...v0.2.0