packages feed

freer-0.2.2.2: freer.cabal

name:                freer
version:             0.2.2.2
synopsis:            Implementation of the Freer Monad
license:             BSD3
license-file:        LICENSE
author:              Alej Cabrera
maintainer:          cpp.cabrera@gmail.com
copyright:           Alej Cabrera 2015
homepage:            https://gitlab.com/cpp.cabrera/freer
bug-reports:         https://gitlab.com/cpp.cabrera/freer/issues
category:            Control
build-type:          Simple
cabal-version:       >=1.18
tested-with:         GHC==7.10.2
description:

    Freer is an implementation of "Freer Monads, More Extensible
    Effects"
    .
    The key features of Freer are:
    .
    * An efficient effect system for Haskell - as a library!
    .
    * Implementations for several common Haskell monad instances:
    .
    * Core components for defining your own Effects

extra-source-files:
    README.md
    changelog.md
    CODE_OF_CONDUCT.md

source-repository head
    type: git
    location: git clone https://gitlab.com/cpp.cabrera/freer.git

library
  exposed-modules:     Control.Monad.Freer
                     , Control.Monad.Freer.Coroutine
                     , Control.Monad.Freer.Cut
                     , Control.Monad.Freer.Exception
                     , Control.Monad.Freer.Fresh
                     , Control.Monad.Freer.Internal
                     , Control.Monad.Freer.Reader
                     , Control.Monad.Freer.State
                     , Control.Monad.Freer.StateRW
                     , Control.Monad.Freer.Trace
                     , Control.Monad.Freer.Writer
                     , Data.FTCQueue
                     , Data.Open.Union

  build-depends:       base >=4.7 && <4.9
  hs-source-dirs:      src
  ghc-options:         -Wall
  default-language:    Haskell2010

executable examples
  main-is:             Main.hs
  other-modules:       Common
                     , Coroutine
                     , Cut
                     , Fresh
                     , NonDetEff
                     , Teletype
                     , Trace
  build-depends:       base >=4.7 && <4.9
                     , freer
  hs-source-dirs:      examples/src
  ghc-options:         -Wall
  default-language:    Haskell2010

test-suite test
  default-language: Haskell2010
  type:             exitcode-stdio-1.0
  hs-source-dirs:   tests
  main-is:          Tests.hs
  other-modules:       Tests.Common
                     , Tests.Exception
                     , Tests.Fresh
                     , Tests.NonDetEff
                     , Tests.Reader
                     , Tests.State
                     , Tests.StateRW
  build-depends:    base
                  , freer
                  , tasty
                  , tasty-hunit
                  , tasty-quickcheck
                  , QuickCheck

  ghc-options: -Wall

benchmark core
  default-language: Haskell2010
  type:             exitcode-stdio-1.0
  hs-source-dirs:   bench
  main-is:          Core.hs
  build-depends:    base
                  , freer
                  , criterion
                  , mtl
                  , free

  ghc-options: -Wall -O2