pipes-transduce

Interfacing pipes with foldl folds.

Version on this page:0.4
LTS Haskell 6.35:0.4
Stackage Nightly 2016-05-25:0.4
Latest on Hackage:0.4.4.0

See all snapshots pipes-transduce appears in

BSD3 licensed by Daniel Diaz
Maintained by diaz_carrete@yahoo.com

Module documentation for 0.4

What’s in this library?

A pair of fold-like datatypes that consume Producers from pipes and can be constructed in a variety of ways, in particular from the more versatile folds in Gabriel Gonzalez’s foldl package.

The Fold1 consumes a single Producer, while the Fold2 datatype consumes two Producers concurrently.

Why was this library created?

I wanted a fold-like datatype for Producers that allowed “bracketing” operations like “withFile”.

I also wanted to be able to fold two Producers concurrently (for example, merge the piped stdout & stderr streams of an external process into one unified stream).

Finally, I wanted the fold-like datatype to have a “failure option” baked in.

If you don’t need any of that, you are better off using pipes and/or foldl by themselves.

Where can I find working examples for this library?

There are none yet.

Changes

0.4.4.0
=======
- Bumped lower bound for foldl.

0.4.3.0
=======
- Bumped base dependency.

0.4.2.0
=======
- Semigroup instance for Fold.
- New dependency on the "streaming" package.
- Added withStreamCont, withStreamCont', withFallibleStreamCont,
withFallibleStreamCont'.

0.4.1.0
=======

- The transducer1/Transducer thing is kind of akward. De-emphasized in the
docs. Use the newly added functions instead.
- Added asUtf8, asUtf8x, bothAsUtf8x, asFoldedLines, combinedLines,
combinedLinesPrefixing.
- New Pipes.Transduce.Internal module.

0.4.0.0
=======

- depend on microlens
- compatibility with foldl 1.2.

0.3.4.0
=======

- removed lens-family dependency.
- solved bom problem.

0.3.3.0
=======

- Made it compile in GHC 7.8.4.

0.3.2.0
=======

- Added "eachLine" function.

0.3.1.0
=======

- Solved bug in "combined", added a test.

0.3.0.0
=======

- Dropped unneeded deps.

0.2.3.0
=======

- More efficient Applicative for Fold2

0.2.0.0
=======

- Added folds of two Producers.
- Name changes.
comments powered byDisqus