Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Alternative implementation of the pipes concept

tree: 91f1fbd803

Fetching latest commit…

Cannot retrieve the latest commit at this time


Alternative implementation of the pipes concept.

The Pipe type is Pipe lo a b u m r, where:

  • lo is either Leftovers or NoLeftovers
  • a is the input type
  • b is the output type
  • u is the upstream return type
  • m is the base monad
  • r is the return type

The primitive stream operations are:

  • tryAwait waits for upstream yield or termination
  • yield yields a value to downstream

Exceptions and finalization are to be decided.

Note that simulatePipe is the fundamental abstraction for running a Pipe. The more widely known runPipe is provided as a specialization.

Something went wrong with that request. Please try again.