The pipes-transduce package

[ Tags: bsd3, control, library ] [ Propose Tags ]

A fold-like datatype for pipes Producers.


[Skip to Readme]

Properties

Versions 0.1.0.0, 0.2.0.0, 0.2.3.0, 0.3.0.0, 0.3.0.1, 0.3.1.0, 0.3.2.0, 0.3.3.0, 0.3.4.0, 0.4
Change log CHANGELOG
Dependencies base (==4.*), bifunctors (>=5.0), bytestring (>=0.9.2.1), conceit (>=0.4.0.0), foldl (>=1.2.0), free (>=4.0), microlens (>=0.4.2.0), pipes (==4.*), pipes-bytestring, pipes-concurrency (>=2.0.2), pipes-group (>=1.0.1), pipes-parse, pipes-safe, pipes-text (>=0.0.1.0), text (>=0.11.2.0), transformers (>=0.4.0.0), void (>=0.6) [details]
License BSD3
Copyright 2015 Daniel Diaz
Author Daniel Diaz
Maintainer diaz_carrete@yahoo.com
Category Control
Bug tracker https://github.com/danidiaz/pipes-transduce/issues
Source repository head: git clone git@github.com:danidiaz/pipes-transduce.git
Uploaded Fri Apr 8 06:42:47 UTC 2016 by DanielDiazCarrete
Distributions NixOS:0.4
Downloads 756 total (99 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2016-04-08 [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for pipes-transduce-0.4

[back to package description]

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.