freer-simple/freer-simple.cabal
Alexis King 5304190c1d 1.2.1.2
2022-01-07 14:28:08 -06:00

137 lines
3.1 KiB
Plaintext

cabal-version: 2.4
name: freer-simple
version: 1.2.1.2
category: Control
build-type: Simple
synopsis: A friendly effect system for Haskell.
description:
An implementation of an effect system for Haskell (a fork of
<http://hackage.haskell.org/package/freer-effects freer-effects>), which is
based on the work of Oleg Kiselyov et al.:
.
* <http://okmij.org/ftp/Haskell/extensible/more.pdf Freer Monads, More Extensible Effects>
* <http://okmij.org/ftp/Haskell/zseq.pdf Reflection without Remorse>
* <http://okmij.org/ftp/Haskell/extensible/exteff.pdf Extensible Effects>
.
The key features are:
.
* An efficient effect system for Haskell - as a library!
* Reimplementations of several common Haskell monad transformers as effects.
* Core components for defining your own Effects.
author: Allele Dev, Ixcom Core Team, Alexis King, and other contributors
maintainer: Alexis King <lexi.lambda@gmail.com>
copyright: 2016 Allele Dev; 2017 Ixperta Solutions s.r.o.; 2017 Alexis King
license: BSD-3-Clause
license-file: LICENSE
homepage: https://github.com/lexi-lambda/freer-simple
bug-reports: https://github.com/lexi-lambda/freer-simple/issues
extra-source-files:
CHANGELOG.md
README.md
source-repository head
type: git
location: https://github.com/lexi-lambda/freer-simple
common common
ghc-options:
-Wall
-Wcompat
-Wincomplete-record-updates
-Wincomplete-uni-patterns
-Wredundant-constraints
default-language: Haskell2010
default-extensions:
ConstraintKinds
DataKinds
DeriveFunctor
FlexibleContexts
FlexibleInstances
FunctionalDependencies
GADTs
LambdaCase
MultiParamTypeClasses
RankNTypes
ScopedTypeVariables
TypeApplications
TypeOperators
build-depends: base >= 4.9 && < 5
library
import: common
hs-source-dirs: src
exposed-modules:
Control.Monad.Freer
Control.Monad.Freer.Coroutine
Control.Monad.Freer.Error
Control.Monad.Freer.Fresh
Control.Monad.Freer.Internal
Control.Monad.Freer.NonDet
Control.Monad.Freer.Reader
Control.Monad.Freer.State
Control.Monad.Freer.TH
Control.Monad.Freer.Trace
Control.Monad.Freer.Writer
Data.FTCQueue
Data.OpenUnion
Data.OpenUnion.Internal
build-depends:
, natural-transformation >= 0.2
, transformers-base
, template-haskell >= 2.11 && < 2.19
executable freer-simple-examples
import: common
hs-source-dirs: examples/src
main-is: Main.hs
other-modules:
Capitalize
Console
Coroutine
Fresh
Trace
build-depends: freer-simple
test-suite freer-simple-test
import: common
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: Tests.hs
other-modules:
Tests.Coroutine
Tests.Exception
Tests.Fresh
Tests.Loop
Tests.NonDet
Tests.Reader
Tests.State
Tests.TH
build-depends:
, QuickCheck
, freer-simple
, tasty
, tasty-hunit
, tasty-quickcheck
benchmark freer-simple-bench
import: common
type: exitcode-stdio-1.0
hs-source-dirs: bench
main-is: Core.hs
ghc-options: -O2
build-depends:
, criterion
, extensible-effects
, free
, freer-simple
, mtl