streams-3.2.1: Various Haskell 2010 stream comonads

Copyright(C) 2011 Edward Kmett,
LicenseBSD-style (see the file LICENSE)
MaintainerEdward Kmett <ekmett@gmail.com>
Stabilityprovisional
Portabilityportable
Safe HaskellTrustworthy
LanguageHaskell98

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 a infixr 5 Source

O(1) cons

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

O(log n).

head :: Stream a -> a Source

O(1)

tail :: Stream a -> Stream a Source

O(1).

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

O(1).

drop :: Integer -> Stream a -> Stream a Source

O(log n).

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

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

repeat :: a -> Stream a Source

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

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

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

update :: Integer -> a -> Stream a -> Stream a Source

fromList :: [a] -> Stream a Source

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