System.IO.Streams

Stream types

data InputStream a

data OutputStream a

A note about resource acquisition/release semantics

Creating streams

makeInputStream

makeOutputStream

Primitive stream operations

read

unRead

peek

write

atEOF

Connecting streams together

connect

connectTo

supply

supplyTo

appendInputStream

concatInputStreams

Thread safety / concurrency

lockingInputStream

lockingOutputStream

Utility streams

nullInput

nullOutput

Generator monad

data Generator r a

fromGenerator

yield

Batteries included