pipes: Compositional pipelines
"Iteratees done right". This library implements iteratees/enumerators/enumeratees simply and elegantly, using different naming conventions.
Advantages over traditional iteratee implementations:
Simpler semantics: There is only one data type (
Pipe), two primitives (
yield), and only one way to compose
.). In fact, this library implements its entire behavior using its
Categoryinstances and enforces their laws strictly!
Clearer naming conventions: Enumeratees are called
Pipes, Enumerators are
Producers, and Iteratees are
Consumers are just type synonyms for
Pipes with either the input or output end closed.
Pipes are Categories: You compose them using ordinary composition.
Intuitive: Pipe composition is easier to reason about because it is a true
Category. Composition works seamlessly and you don't have to worry about restarting iteratees, feeding new input, etc. "It just works".
Vertical concatenation works flawlessly on everything: (
Pipes, but since everything is a
Pipe, you can use it to concatenate
Consumers, and even intermediate
Pipestages. Vertical Concatenation always works the way you expect, picking up where the previous
|Versions [faq]||1.0, 1.0.1, 1.0.2, 2.0.0, 2.1.0, 2.2.0, 2.3.0, 2.4.0, 2.5.0, 3.0.0, 3.1.0, 3.2.0, 3.3.0, 4.0.0, 4.0.1, 4.0.2, 4.1.0, 4.1.1, 4.1.2, 4.1.3, 4.1.4, 4.1.5, 4.1.6, 4.1.7, 4.1.8, 4.1.9, 4.2.0, 4.3.0, 4.3.1, 4.3.2, 4.3.3, 4.3.4, 4.3.5, 4.3.6, 4.3.7, 4.3.8, 4.3.9|
|Dependencies||base (==4.*), transformers, void [details]|
|Copyright||2012 Gabriel Gonzalez|
|Source repo||head: git clone https://github.com/Gabriel439/Haskell-Pipes-Library|
|Uploaded||by GabrielGonzalez at Mon May 21 04:53:45 UTC 2012|
|Distributions||Arch:4.3.9, Debian:4.3.9, Fedora:4.3.9, LTSHaskell:4.3.9, NixOS:4.3.9, Stackage:4.3.9|
|Downloads||52586 total (580 in the last 30 days)|
|Rating||2.75 (votes: 9) [estimated by rule of succession]|
Docs available [build log]
Last success reported on 2016-06-04 [all 1 reports]
For package maintainers and hackage trustees