Copyright | (C) 2012 Edward Kmett |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Stability | experimental |
Portability | portable |
Safe Haskell | Trustworthy |
Language | Haskell98 |
Documentation
"I am not a number, I am a free monad!"
A
is a variable that may either be "bound" (Var
b aB
) or "free" (F
).
(It is also technically a free monad in the same near-trivial sense as
Either
.)
Bitraversable Var | |
Bifunctor Var | |
Bifoldable Var | |
Serial2 Var | |
Hashable2 Var | |
Eq2 Var | |
Ord2 Var | |
Show2 Var | |
Read2 Var | |
Monad (Var b) | |
Functor (Var b) | |
Applicative (Var b) | |
Foldable (Var b) | |
Traversable (Var b) | |
Serial b => Serial1 (Var b) | |
Hashable b => Hashable1 (Var b) | |
Eq b => Eq1 (Var b) | |
Ord b => Ord1 (Var b) | |
Show b => Show1 (Var b) | |
Read b => Read1 (Var b) | |
(Eq b, Eq a) => Eq (Var b a) | |
(Data b, Data a) => Data (Var b a) | |
(Ord b, Ord a) => Ord (Var b a) | |
(Read b, Read a) => Read (Var b a) | |
(Show b, Show a) => Show (Var b a) | |
Generic (Var b a) | |
(Binary b, Binary a) => Binary (Var b a) | |
(Serial b, Serial a) => Serial (Var b a) | |
(Serialize b, Serialize a) => Serialize (Var b a) | |
(Hashable b, Hashable a) => Hashable (Var b a) | |
Typeable (* -> * -> *) Var | |
type Rep (Var b a) |