packages feed

express-1.0.12: express.cabal

-- Cabal file for express
name: express
version: 1.0.12
synopsis: Dynamically-typed expressions involving function application and variables.
description:
  Express is a library for manipulating dynamically typed Haskell expressions.
  It's like @ Data.Dynamic @ but
  with support for encoding function aplication and variables.
  .
  It provides the @ Expr @ type and over a hundred functions for
  building, evaluating, comparing, folding, canonicalizing and matching
  @ Expr @s.  See the README and Haddock documentation for more details.


homepage: https://github.com/rudymatela/express#readme
license: BSD3
license-file: LICENSE
author:     Rudy Matela <rudy@matela.com.br>
maintainer: Rudy Matela <rudy@matela.com.br>
category: Data
build-type: Simple
cabal-version: 1.18

extra-doc-files: README.md
               , TODO.md
               , changelog.md
               , doc/express.svg
extra-source-files: .gitignore
                  , .github/workflows/build.yml
                  , Makefile
                  , mk/depend.mk
                  , mk/haskell.mk
                  , mk/ghcdeps
                  , mk/haddock-i
                  , mk/install-on
                  , mk/All.hs
                  , mk/Toplibs.hs
                  , stack.yaml
                  , test/sdist
                  , test/model/bench/*.out
                  , test/model/eg/*.out
                  , bench/versions
                  , bench/runtime/zero/versions
                  , bench/runtime/zero/bench/*.runtime
                  , bench/runtime/zero/eg/*.runtime
                  , etc/hugs-backports/Data/Function.hs
tested-with: GHC==9.4
           , GHC==9.2
           , GHC==9.0
           , GHC==8.10
           , GHC==8.6
           , GHC==8.2
           , Hugs==2006.9
-- for Hugs, not all modules are supported, see test/typecheck.hs

source-repository head
  type:           git
  location:       https://github.com/rudymatela/express

source-repository this
  type:           git
  location:       https://github.com/rudymatela/express
  tag:            v1.0.12

library
  exposed-modules:     Data.Express
                     , Data.Express.Core
                     , Data.Express.Basic
                     , Data.Express.Map
                     , Data.Express.Express
                     , Data.Express.Express.Derive
                     , Data.Express.Fixtures
                     , Data.Express.Fold
                     , Data.Express.Hole
                     , Data.Express.Instances
                     , Data.Express.Name
                     , Data.Express.Name.Derive
                     , Data.Express.Canon
                     , Data.Express.Match
                     , Data.Express.Triexpr
                     , Data.Express.Utils
                     , Data.Express.Utils.List
                     , Data.Express.Utils.String
                     , Data.Express.Utils.Typeable
                     , Data.Express.Utils.TH
  hs-source-dirs:      src
  build-depends:       base >= 4 && < 5, template-haskell
  default-language:    Haskell2010

test-suite main
  type:                exitcode-stdio-1.0
  main-is:             main.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite core
  type:                exitcode-stdio-1.0
  main-is:             core.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite canon
  type:                exitcode-stdio-1.0
  main-is:             canon.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite hole
  type:                exitcode-stdio-1.0
  main-is:             hole.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite match
  type:                exitcode-stdio-1.0
  main-is:             match.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite map
  type:                exitcode-stdio-1.0
  main-is:             map.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite fixtures
  type:                exitcode-stdio-1.0
  main-is:             fixtures.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite instances
  type:                exitcode-stdio-1.0
  main-is:             instances.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite express-instances
  type:                exitcode-stdio-1.0
  main-is:             express.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite express-derive
  type:                exitcode-stdio-1.0
  main-is:             express-derive.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite ord
  type:                exitcode-stdio-1.0
  main-is:             ord.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite listable
  type:                exitcode-stdio-1.0
  main-is:             listable.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite name
  type:                exitcode-stdio-1.0
  main-is:             name.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite name-derive
  type:                exitcode-stdio-1.0
  main-is:             name-derive.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite fold
  type:                exitcode-stdio-1.0
  main-is:             fold.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite show
  type:                exitcode-stdio-1.0
  main-is:             show.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite triexpr
  type:                exitcode-stdio-1.0
  main-is:             triexpr.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite utils
  type:                exitcode-stdio-1.0
  main-is:             utils.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

test-suite typecheck
  type:                exitcode-stdio-1.0
  main-is:             typecheck.hs
  hs-source-dirs:      test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark compare
  type:                exitcode-stdio-1.0
  main-is:             compare.hs
  hs-source-dirs:      bench, test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark pairs
  type:                exitcode-stdio-1.0
  main-is:             pairs.hs
  hs-source-dirs:      bench, test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark sort
  type:                exitcode-stdio-1.0
  main-is:             sort.hs
  hs-source-dirs:      bench, test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark tiers
  type:                exitcode-stdio-1.0
  main-is:             tiers.hs
  hs-source-dirs:      bench, test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark match-list
  type:                exitcode-stdio-1.0
  main-is:             match-list.hs
  hs-source-dirs:      bench, test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark match-noop
  type:                exitcode-stdio-1.0
  main-is:             match-noop.hs
  hs-source-dirs:      bench, test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark match-triexpr
  type:                exitcode-stdio-1.0
  main-is:             match-triexpr.hs
  hs-source-dirs:      bench, test
  other-modules:       Test, Test.ListableExpr
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark u-extrapolate
  type:                exitcode-stdio-1.0
  main-is:             u-extrapolate.hs
  hs-source-dirs:      eg
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark u-speculate
  type:                exitcode-stdio-1.0
  main-is:             u-speculate.hs
  hs-source-dirs:      eg
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010

benchmark u-conjure
  type:                exitcode-stdio-1.0
  main-is:             u-conjure.hs
  hs-source-dirs:      eg
  build-depends:       base >= 4 && < 5, express, leancheck >= 0.9.10
  default-language:    Haskell2010