Ecosyste.ms: Packages
An open API service providing package, version and dependency metadata of many open source software ecosystems and registries.
hackage.haskell.org : free : 5.2
Free monads are useful for many tree-like structures and domain specific languages. If f is a Functor then the free Monad on f is the type of trees whose nodes are labeled with the constructors of f. The word "free" is used in the sense of "unrestricted" rather than "zero-cost": Free f makes no constraining assumptions beyond those given by f and the definition of Monad. As used here it is a standard term from the mathematical theory of adjoint functors. Cofree comonads are dual to free monads. They provide convenient ways to talk about branching streams and rose-trees, and can be used to annotate syntax trees. The cofree comonad can be seen as a stream parameterized by a Functor that controls its branching factor. More information on free monads, including examples, can be found in the following blog posts: https://ekmett.github.io/reader/2008/monads-for-free/ https://ekmett.github.io/reader/2011/free-monads-for-less/
Registry -
Download -
JSON
purl: pkg:hackage/[email protected]
Published:
Indexed:
Related tag:
v5.2
- compare
- base >=4.9 && <5
- bifunctor-classes-compat >=0.1 && <0.2
- comonad >=5.0.8 && <6
- containers >=0.5.7.1 && <0.7
- distributive >=0.5.2 && <1
- exceptions >=0.10.4 && <0.11
- indexed-traversable >=0.1.1 && <0.2
- mtl >=2.2.2 && <2.4
- profunctors >=5.6.1 && <6
- semigroupoids >=5.3.5 && <7
- template-haskell >=2.11 && <2.21
- th-abstraction >=0.4.2.0 && <0.6
- transformers >=0.5 && <0.7
- transformers-base >=0.4.5.2 && <0.5