conduit: Streaming data processing library.
Conduits are an approach to the streaming data problem. It is meant as an alternative to enumerators/iterators, hoping to address the same issues with different trade-offs based on real-world experience with enumerators. For more information, see http://www.yesodweb.com/book/conduit.
Release history:
- 0.2
- Instead of storing state in mutable variables, we now use CPS. A
Source
returns the nextSource
, and likewise forSink
s andConduit
s. Not only does this take better advantage of GHC's optimizations (about a 20% speedup), but it allows some operations to have a reduction in algorithmic complexity from exponential to linear. This also allowed us to remove thePrepared
set of types. Also, theState
functions (e.g.,sinkState
) use better constructors for return types, avoiding the need for a dummy state on completion. - 0.1
BufferedSource
is now an abstract type, and has a much more efficient internal representation. The result was a 41% speedup on microbenchmarks (note: do not expect speedups anywhere near that in real usage). In general, we are moving towardsBufferedSource
being a specific tool used internally as needed, but usingSource
for all external APIs.- 0.0
- Initial release.
Modules
[Index]
Flags
Name | Description | Default | Type |
---|---|---|---|
debug | Turn on some runtime check to ensure invariants are respected. | Enabled | Automatic |
nohandles | Enabled | Automatic |
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
Downloads
- conduit-0.2.0.tar.gz [browse] (Cabal source package)
- Package description (revised from the package)
Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.