MyNixOS website logo
Description

A meta-package documenting various packages inspired by category theory.

The obsolete category-extras package provided a monolithic set of modules designed for the use of category theory in Haskell. It was exploded into more focused, self-contained packages (listed in the dependencies below); this meta-package documents where the code has gone. In addition to the core definitions, the original category-extras library included several concrete data types as instances of the core concepts. These are now available from the following packages:

  • data-lens

  • data-lens-fd

  • data-lens-template

  • eq

  • representable-tries

  • streams

  • vector-instances

There are two overviews below. The first is a quick, dependency-order graphical overview of packages. The second is a more detailed (but very incomplete -- help me complete it!) overview mapping each module in the old package into its new location in the new hierarchy. Not all modules have exact analogs; where possible, similar alternatives are listed.

Control
    Control.Allegory: use alternative profunctors-Data.Profunctor
    Applicative
        Control.Applicative.Parameterized
    Arrow
        Control.Arrow.BiKleisli
        Control.Arrow.CoKleisli: comonad-Control.Comonad
    Control.Category: base-Control.Category
        Control.Category.Associative: categories-Control.Category.Associative
        Control.Category.Braided: categories-Control.Category.Braided
        Control.Category.Cartesian: categories-Control.Category.Cartesian
            Control.Category.Cartesian.Closed: categories-Control.Category.Cartesian.Closed
        Control.Category.Discrete: categories-Control.Category.Discrete
        Control.Category.Distributive: categories-Control.Category.Distributive
        Control.Category.Dual: categories-Control.Category.Dual
        Control.Category.Hask: just use "(->)" instead of "Hask"
        Control.Category.Monoidal: categories-Control.Category.Monoidal
        Control.Category.Object: categories-Control.Categorical.Object
    Control.Comonad: comonad-Control.Comonad
        Control.Comonad.Cofree: free-Control.Comonad.Cofree
        Control.Comonad.Coideal
        Control.Comonad.Context: comonad-transformers-Control.Comonad.Trans.Store
        Control.Comonad.Density: kan-extensions-Control.Comonad.Density
        Control.Comonad.Exponent: comonad-transformers-Control.Comonad.Trans.Trace
        Control.Comonad.Fix: comonad-Control.Comonad
        Control.Comonad.HigherOrder
        Control.Comonad.Indexed: indexed-Control.Comonad.Indexed
        Control.Comonad.Parameterized
        Control.Comonad.Pointer: comonad-extras-Control.Comonad.Store.Pointer
        Control.Comonad.Reader: comonad-transformers-Control.Comonad.Trans.Env
        Control.Comonad.Stream: use alternative package streams
        Control.Comonad.Supply
        Control.Comonad.Trans: comonad-transformers-Control.Comonad.Trans.Class
    Control.Dyad
    Control.Functor: bifunctors-Data.Bifunctor
        Control.Functor.Adjunction: adjunctions-Data.Functor.Adjunction
            Control.Functor.Adjunction.HigherOrder
        Control.Functor.Algebra
        Control.Functor.Algebra.Elgot: recursion-schemes-Data.Functor.Foldable
        Control.Functor.Categorical: categories-Control.Categorical.Functor
        Combinators
            Control.Functor.Combinators.Biff
            Control.Functor.Combinators.Const
            Control.Functor.Combinators.Flip
            Control.Functor.Combinators.Join
            Control.Functor.Combinators.Lift
            Control.Functor.Combinators.Of
        Control.Functor.Composition: transformers-Data.Functor.Compose and comonad-transformers-Data.Functor.Composition
        Control.Functor.Cone
        Control.Functor.Contra: contravariant-Data.Functor.Contravariant
        Control.Functor.Exponential: invariant-Data.Functor.Invariant
        Control.Functor.Extras: distributive-Data.Distributive, semigroupoids-Data.Functor.Plus, and semigroupoids-Data.Functor.Alt
        Control.Functor.Fix: recursion-schemes-Data.Functor.Foldable
        Control.Functor.Full
        Control.Functor.HigherOrder
            Control.Functor.HigherOrder.Composition
        Control.Functor.Indexed: indexed-Data.Functor.Indexed
        Control.Functor.KanExtension: kan-extensions-Data.Functor.KanExtension
            Control.Functor.KanExtension.Interpreter
        Control.Functor.Lambek
        Control.Functor.Limit
        Control.Functor.Pointed: pointed-Data.Pointed and pointed-Data.Copointed
            Control.Functor.Pointed.Composition: pointed-Data.Pointed and pointed-Data.Copointed
        Control.Functor.Representable: representable-functors-Data.Functor.Representable
        Control.Functor.Strong
        Control.Functor.Yoneda: kan-extensions-Data.Functor.Yoneda
        Control.Functor.Zap: keys-Data.Key
        Control.Functor.Zip: keys-Data.Key
    Monad
        Control.Monad.Categorical: pointed-Data.Pointed and semigroupoids-Data.Functor.Bind
        Control.Monad.Codensity: kan-extensions-Control.Monad.Codensity
        Control.Monad.Either: either-Control.Monad.Trans.Either
        Control.Monad.Free: free-Control.Monad.Free
        Control.Monad.HigherOrder
        Control.Monad.Hyper
        Control.Monad.Ideal
        Control.Monad.Indexed: indexed-Control.Monad.Indexed
            Control.Monad.Indexed.Cont: indexed-extras-Control.Monad.Indexed.Cont
            Control.Monad.Indexed.Fix: indexed-Control.Monad.Indexed.Fix
            Control.Monad.Indexed.State: indexed-extras-Control.Monad.Indexed.State
            Control.Monad.Indexed.Trans: indexed-Control.Monad.Indexed.Trans
        Control.Monad.Parameterized
    Morphism
        Control.Morphism.Ana: recursion-schemes-Data.Functor.Foldable
        Control.Morphism.Apo: recursion-schemes-Data.Functor.Foldable
        Control.Morphism.Build
        Control.Morphism.Cata: recursion-schemes-Data.Functor.Foldable
        Control.Morphism.Chrono
        Control.Morphism.Destroy
        Control.Morphism.Dyna
        Control.Morphism.Exo
        Control.Morphism.Futu: recursion-schemes-Data.Functor.Foldable
        Control.Morphism.Histo: recursion-schemes-Data.Functor.Foldable
        Control.Morphism.Hylo: recursion-schemes-Data.Functor.Foldable
        Meta
            Control.Morphism.Meta.Erwig
            Control.Morphism.Meta.Gibbons
        Control.Morphism.Para: recursion-schemes-Data.Functor.Foldable
        Control.Morphism.Postpro: recursion-schemes-Data.Functor.Foldable
        Control.Morphism.Prepro: recursion-schemes-Data.Functor.Foldable
        Control.Morphism.Span
        Control.Morphism.Synchro
        Control.Morphism.Universal
        Control.Morphism.Zygo: recursion-schemes-Data.Functor.Foldable
Data
    Data.Void: void-Data.Void
Metadata

Version

1.0.2

Platforms (77)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-windows
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-darwin
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-darwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows