
Dan Doel asked me to roll category-extras into my nascent comonad transformer library, and the result is category-extras 0.44.2! So since Dan's release a couple of weeks ago ( http://www.haskell.org/pipermail/haskell-cafe/2008-April/042240.html) we have added: * Comonad Transformers. Context/ContextT, Reader/ReaderT. * A suite of Bifunctors and combinators in Control.Bifunctor.* -- we attach most of the logic usually associated with a monoidal/comonoidal category to the individual Bifunctor since Hask is a rich category to begin with. * A suite of Functors and combinators in Control.Functor.* * Pointed and copointed functors. * Control.Recursion has been broken out into a Control.Morphism.* and recoded to use a simpler distributive law. * Type Indexed versions of Applicatives, Monads, and Comonads (including Diatchki's Indexed State and Wadler's Delimited Continuation Parameterized Monad) * Parameterized Monads a la Ghani and Johann's paper ICFP 07 paper, and their Applicative and comonadic dual. * Higher-order hylo-, cata- and ana- morphisms. * Higher-order Monads a la Ghani and Johann and their comonadic equivalents. * Kan extensions. * BiKleisli arrows as seen in Uustalu and Vene's Signals and Comonads and SIGFPE's recent posts * The Pointer comonad * Grabbed Iavor Diatchki's value-supply and rolled it in as Control.Comonad.Supply to make it clearer that it is a comonad, and pave the way towards a Supply comonad transformer * A richer set of compositions to allow for construction of comonads and monads not only from adjunctions, but also from pre-composition or post-composition of a monad with a pointed functor, and similarly pre-composition and post-composition of a comonad with a copointed functor. * Generic functor zapping, zipping, unzipping, and cozipping as mentioned recently on http://comonad.com/reader There is still a lot to do in terms of adding back a lot of the documentation from the original, documenting the extensions and fleshing out all of the definable instances as the concepts have grown exceptionally fine-grained. I definitely welcome feedback and additions. In particular if you were using a feature that was supported by the old library or is unnatural to program in the current one, let me know. My goal is to gather a lot of this esoterica into one place and integrate it into something cohesive. HEAD: haddock http://comonad.com/haskell/category-extras/dist/doc/html/category-extras/ darcs http://comonad.com/haskell/category-extras/ Release: package http://hackage.haskell.org/cgi-bin/hackage-scripts/package/category-extras-0... -Edward Kmett
participants (1)
-
Edward Kmett