| Copyright | (C) 2015 Edward Kmett |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | Edward Kmett <ekmett@gmail.com> |
| Stability | provisional |
| Portability | MPTCs, fundeps |
| Safe Haskell | Trustworthy |
| Language | Haskell2010 |
Data.Profunctor.Sieve
Description
- class (Profunctor p, Functor f) => Sieve p f | p -> f where
- sieve :: p a b -> a -> f b
- class (Profunctor p, Functor f) => Cosieve p f | p -> f where
- cosieve :: p a b -> f a -> b
Documentation
class (Profunctor p, Functor f) => Sieve p f | p -> f where Source
A Profunctor p is a Sieve on f if it is a subprofunctor of .Star f
That is to say it is a subset of Hom(-,f=) closed under lmap and rmap.
Alternately, you can view it as a sieve in the comma category Hask/f.
class (Profunctor p, Functor f) => Cosieve p f | p -> f where Source
A Profunctor p is a Cosieve on f if it is a subprofunctor of .Costar f
That is to say it is a subset of Hom(f-,=) closed under lmap and rmap.
Alternately, you can view it as a cosieve in the comma category f/Hask.