cabal-version: 1.12
-- This file has been generated from package.yaml by hpack version 0.31.1.
--
-- see: https://github.com/sol/hpack
--
-- hash: 33941e666f0eefbbab428913a4b981e1f1fc2f2cf74864c990b14b1952b529e9
name: functor-combinators
version: 0.1.0.1
synopsis: Tools for functor combinator-based program design
description: Tools for working with /functor combinators/: types that take functors (or
other indexed types) and returns a new functor that "enhances" or "mixes"
them in some way. In the process, you can design featureful programs by
composing smaller "primitives" using basic unversal combinators.
.
The main entry point is "Data.Functor.Combinators", but more fine-grained
functionality and extra combinators (some of them re-implementations for
compatibility) are available in other modules as well.
.
This library does not define new functor combinators for the most part,
but rather re-exports them from different parts of the Haskell ecosystem
and provides a uniform interface.
.
See the README for a quick overview, and also
<https://blog.jle.im/entry/functor-combinatorpedia.html> for an in-depth
dive into the motivation behind functor combinator-driven development,
examples of the functor combinators in this library, and details about how
to use these abstractions!
category: Data
homepage: https://github.com/mstksg/functor-combinators#readme
bug-reports: https://github.com/mstksg/functor-combinators/issues
author: Justin Le
maintainer: justin@jle.im
copyright: (c) Justin Le 2019
license: BSD3
license-file: LICENSE
tested-with: GHC >= 8.6
build-type: Simple
extra-source-files:
README.md
CHANGELOG.md
source-repository head
type: git
location: https://github.com/mstksg/functor-combinators
library
exposed-modules:
Control.Applicative.ListF
Control.Applicative.Step
Control.Monad.Freer.Church
Control.Natural.IsoF
Data.Functor.Apply.Free
Data.Functor.Combinator
Data.Functor.Combinator.Unsafe
Data.HBifunctor
Data.HBifunctor.Associative
Data.HBifunctor.Tensor
Data.HFunctor
Data.HFunctor.Chain
Data.HFunctor.Final
Data.HFunctor.Interpret
other-modules:
Data.HFunctor.Internal
hs-source-dirs:
src
ghc-options: -Wall -Wcompat -Wredundant-constraints -Werror=incomplete-patterns
build-depends:
base >=4.12 && <5
, bifunctors
, comonad
, constraints
, containers
, deriving-compat
, free
, kan-extensions
, mmorph
, mtl
, natural-transformation
, nonempty-containers
, pointed
, profunctors
, recursion-schemes
, semigroupoids
, tagged
, these
, transformers
, trivial-constraint >=0.5.1
, vinyl
default-language: Haskell2010
test-suite functor-combinators-test
type: exitcode-stdio-1.0
main-is: Spec.hs
other-modules:
Tests.HBifunctor
Tests.HFunctor
Tests.Util
Paths_functor_combinators
hs-source-dirs:
test
ghc-options: -Wall -Wcompat -Wredundant-constraints -Werror=incomplete-patterns -threaded -rtsopts -with-rtsopts=-N
build-depends:
base >=4.12 && <5
, bifunctors
, dependent-sum
, free
, functor-combinators
, hedgehog >=1.0
, nonempty-containers
, semigroupoids
, tagged
, tasty
, tasty-hedgehog >=1.0
, transformers
default-language: Haskell2010