heftia/heftia.cabal
2023-08-28 16:02:00 +09:00

129 lines
3.3 KiB
Plaintext

cabal-version: 2.4
name: heftia
version: 0.1.0.0
-- A short (one-line) description of the package.
synopsis: Higher-order version of Freer.
-- A longer description of the package.
description:
Heftia, a composition of hefty trees and co-Yoneda, is a higher-order
effects version of Freer.
.
The paper
.
* Casper Bach Poulsen and Cas van der Rest. 2023. Hefty Algebras: Modular
Elaboration of Higher-Order Algebraic Effects. Proc. ACM Program. Lang. 7,
POPL, Article 62 (January 2023), 31 pages. <https://doi.org/10.1145/3571255>
.
inspires this library.
Hefty trees, proposed by the above paper, are extensions of free monads,
allowing for a straightforward treatment of higher-order effects.
.
This library provides Heftia monads and Freer monads, encoded into data
types in several ways to enable tuning in pursuit of high performance.
.
-- A URL where users can report bugs.
bug-reports: https://github.com/sayo-hs/heftia
-- The license under which the package is released.
license: LGPL-3.0-or-later
license-file: LICENSE
author: Yamada Ryo <ymdfield@outlook.jp>
maintainer: Yamada Ryo <ymdfield@outlook.jp>
-- A copyright notice.
copyright:
2023 Casper Bach Poulsen and Cas van der Rest,
2023 Yamada Ryo
category: Control, Monads
extra-source-files:
ChangeLog.md
README.md
CONTRIBUTORS
tested-with:
GHC == 9.2.8
source-repository head
type: git
location: https://github.com/sayo-hs/heftia
library
exposed-modules:
Control.Hefty
Control.Heftia
Control.Heftia.Final
Control.Heftia.Final.Naked
Control.Heftia.Trans
Control.Heftia.Trans.Final
Control.Heftia.Trans.Final.Naked
Control.Free
Control.Freer
Control.Freer.Trans
Control.Monad.Trans.Heftia
Control.Monad.Trans.Heftia.Tree
Control.Monad.Trans.Hefty
Control.Monad.Trans.Freer.Tree
Data.Hefty.Sum
Data.Hefty.Union
Data.Free.Sum
Data.Free.Union
-- Modules included in this executable, other than Main.
-- other-modules:
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
build-depends:
base ^>= 4.16.4.0,
mtl,
free,
natural-transformation,
kan-extensions,
constraints,
transformers-base,
hs-source-dirs: src
ghc-options: -Wall
default-language: GHC2021
default-extensions:
LambdaCase,
DerivingStrategies,
DataKinds,
TypeFamilies,
BlockArguments,
FunctionalDependencies,
RecordWildCards,
DefaultSignatures
test-suite test
main-is: Driver.hs
hs-source-dirs: test
build-depends:
hefty,
base,
tasty ^>= 1.4,
tasty-hunit ^>= 0.10,
type: exitcode-stdio-1.0
build-tool-depends:
tasty-discover:tasty-discover
default-language: GHC2021
default-extensions:
LambdaCase,
DerivingStrategies,
DataKinds,
TypeFamilies,
BlockArguments,
FunctionalDependencies,
RecordWildCards,
DefaultSignatures