heftia

Heftia is a higher-order effects version of Freer. This library provides "continuation-based semantics" for higher-order effects, the same as lexi-lambda's eff. Instead of using the IO monad to implement delimited continuations for effects, Heftia internally uses Freer monad. 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 Hefty monads and Freer monads, encoded into data types in several ways to enable tuning in pursuit of high performance.


Keywords
library, monads, mpl, Propose Tags, continuation-based semantics, lexi-lambda's eff, https://doi.org/10.1145/3571255, Skip to Readme, , Index, Quick Jump, Control.Effect.ExtensibleChurch, Control.Effect.ExtensibleFastA, Control.Effect.ExtensibleFinal, Control.Effect.ExtensibleFinalA, Control.Effect.ExtensibleTree, Control.Effect.ExtensibleTreeA, Control.Effect.Free, Control.Effect.Hefty, Control.Freer, Control.Freer.Final, Control.Hefty, Control.Monad.Freer, Control.Monad.Freer.Church, Control.Monad.Freer.Tree, Data.Free.Sum, Data.Hefty.Extensible, Data.Hefty.Union, Data.Hefty.Union.Strengthen, Data.Hefty.Union.Weaken, heftia-0.3.1.0.tar.gz, browse, Package description, Package maintainers, YamadaRyo, edit package information , ghc-typelits-knownnat, SemanticsZoo example, example code, complete code, implementation of the elaborator, Sayo Project, heftia-effects/Example/, https://github.com/sayo-hs/HeftWorld, docs-ja/examples/, 1, 2, data-effects, data-effects-th, HFunctor, NOTICE, CONTRIBUTING.md, Hefty Algebras -- The Artifact, https://gist.github.com/ymdryo/6fb2f7f4020c6fcda98ccc67c090dc75
License
MPL-2.0
Install
cabal install heftia-0.3.1.0