@hackage / free-category

efficient data types for free categories and arrows

Latest0.0.4.5

About

Metadata

  • Last updated , by coot
  • License MPL-2.0
  • Categories Mathematics, Monads
  • Maintained by: coot@coot.me

  • Lottery factor: 0

Links

Installation

Readme

Free Category

Maintainer: coot Haskell/CI

This package contains efficient implementations of free categories. There are various representations available:

  • real-time queues (C. Okasaki 'Pure Functional Data Structures')
  • type aligned lists
  • continuation passing style (Church encoding)

Free arrows and free Kleisli categories are also included.

Free categories are useful to model state machines in a simple yet type safe manner. For that purpose Kleisli categories are a very useful target which allows to include monadic computations. This package contains a useful generalisation of Kleisli categories captured by EffectCategory class (categories with effects), and a (free) transformer which lifts a category to a category with effects.

Benchmarks

Check performance characteristics of various representations:

Resources