free is:package
Monads for free
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/
A friendly effect system for Haskell.
An implementation of an effect system for Haskell (a fork of
freer-effects), which is based on the work of Oleg Kiselyov et
al.:
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.
Haskell bindings for FreeType 2 library
Mostly complete and mostly raw bindings to the
FreeType2
library.
Please check the README for information on how these bindings operate.
Not on Stackage, so not searched.
Automatic generation of free theorems.
Not on Stackage, so not searched.
Implementation of effect system for Haskell.
Free monads based on intuitions from the Data types à la Carte.
Free monads based on intuitions from the Data types à la Carte paper.
Combine functors and make embedded DSLs in Haskell.
Not on Stackage, so not searched.
Instantiate the classes from the vector-space package with types from linear
Not on Stackage, so not searched.
Free algebras
Not on Stackage, so not searched.
Free Applicative Transformer
Not on Stackage, so not searched.
efficient data types for free categories and arrows
Not on Stackage, so not searched.
Create games for free
Not on Stackage, so not searched.
Operational Applicative, Alternative, Monad and MonadPlus from free types.
Not on Stackage, so not searched.
Handle effects conversely using monadic conversation
Not on Stackage, so not searched.
Checked runtime exceptions with freer-simple
Not on Stackage, so not searched.
Make HTTP requests with freer-simple!
Not on Stackage, so not searched.
Automatic profling of freer-simple programs
Not on Stackage, so not searched.
Random number generators using freer-simple
Not on Stackage, so not searched.
freer-simple interface to IO based time functions
Not on Stackage, so not searched.
Access the Freesound Project database
free categories
free categories, paths, and categorical folds
Not on Stackage, so not searched.
Free monads suitable for concurrent computation
Not on Stackage, so not searched.
An extensible effects library
Not on Stackage, so not searched.
Free functors, adjoint to functors that forget class constraints.