streams-3.2: Various Haskell 2010 stream comonads

Portabilityportable
Stabilityprovisional
MaintainerEdward Kmett <ekmett@gmail.com>
Safe HaskellTrustworthy

Data.Stream.Infinite.Skew

Description

Anticausal streams implemented as non-empty skew binary random access lists

The Applicative zips streams, the monad diagonalizes

Synopsis

Documentation

(<|) :: a -> Stream a -> Stream aSource

O(1) cons

(!!) :: Stream a -> Integer -> aSource

O(log n).

head :: Stream a -> aSource

O(1)

tail :: Stream a -> Stream aSource

O(1).

uncons :: Stream a -> (a, Stream a)Source

O(1).

drop :: Integer -> Stream a -> Stream aSource

O(log n).

dropWhile :: (a -> Bool) -> Stream a -> Stream aSource

span :: (a -> Bool) -> Stream a -> ([a], Stream a)Source

break :: (a -> Bool) -> Stream a -> ([a], Stream a)Source

split :: (a -> Bool) -> Stream a -> ([a], Stream a)Source

splitW :: (Stream a -> Bool) -> Stream a -> ([a], Stream a)Source

insert :: Ord a => a -> Stream a -> Stream aSource

insertBy :: (a -> a -> Ordering) -> a -> Stream a -> Stream aSource

adjust :: Integer -> (a -> a) -> Stream a -> Stream aSource

update :: Integer -> a -> Stream a -> Stream aSource

from :: Num a => a -> Stream aSource