heftia
Version 0.3.1.0 revision 0 uploaded by YamadaRyo.
Package meta
- Synopsis
- higher-order effects done right
- Description
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 usesFreer
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.
- Author
- Yamada Ryo <ymdfield@outlook.jp>
- Bug reports
- https://github.com/sayo-hs/heftia
- Category
- Control, Monads
- Copyright
- 2023-2024 Yamada Ryo
- Homepage
- n/a
- Maintainer
- Yamada Ryo <ymdfield@outlook.jp>
- Package URL
- n/a
- Stability
- n/a