Portability | portable |
---|---|
Stability | provisional |
Maintainer | Edward Kmett <ekmett@gmail.com> |
- data Stream f a = a :< (f (Stream f a))
- head :: Stream f a -> a
- tail :: Stream f a -> f (Stream f a)
- tails :: Functor f => Stream f a -> Stream f (Stream f a)
- inits1 :: Functor f => Stream f a -> Stream f (NonEmpty a)
- scanr :: Functor f => (a -> f b -> b) -> Stream f a -> Stream f b
- scanl :: Functor f => (a -> b -> a) -> a -> Stream f b -> Stream f a
- unfold :: Functor f => (b -> (a, f b)) -> b -> Stream f a
The type of streams
Functor f => Functor (Stream f) | |
Applicative f => Applicative (Stream f) | |
Functor f => Comonad (Stream f) | |
Functor f => Extend (Stream f) | |
Distributive f => Distributive (Stream f) | |
Apply f => Apply (Stream f) | |
(Eq (f (Stream f a)), Eq a) => Eq (Stream f a) | |
(Ord (f (Stream f a)), Ord a) => Ord (Stream f a) | |
(Show (f (Stream f a)), Show a) => Show (Stream f a) |