streaming: A general free monad transformer optimized for streaming applications.

[ bsd3, data, library, pipes, streaming ] [ Propose Tags ]

Stream can be used wherever FreeT is used. The compiler is better able to optimize operations written in terms of Stream.

An associated prelude of functions, closely following Pipes.Prelude is focused on on employment with a base functor like ((,) a) (here called Of a) which generates effectful sequences or producers - Pipes.Producer, Conduit.Source, IOStreams.InputStream, IOStreams.Generator and the like.

Interoperation with pipes is accomplished with this isomorphism:

Pipes.unfoldr Streaming.next :: Stream (Of a) m r -> Producer a m r
Stream.unfoldr Pipes.next    :: Producer a m r -> Stream (Of a) m r

Exit to conduit and iostreams is thus:

Conduit.unfoldM Streaming.uncons   :: Stream (Of a) m ()  -> Source m a
IOStreams.unfoldM Streaming.uncons :: Stream (Of a) IO () -> InputStream a
Versions 0.1.0.0, 0.1.0.1, 0.1.0.3, 0.1.0.4, 0.1.0.5, 0.1.0.6, 0.1.0.7, 0.1.0.8, 0.1.0.9, 0.1.0.10, 0.1.0.11, 0.1.0.12, 0.1.0.13, 0.1.0.14, 0.1.0.15, 0.1.0.16, 0.1.0.17, 0.1.0.18, 0.1.0.19, 0.1.0.20, 0.1.1.0, 0.1.1.1, 0.1.2.0, 0.1.2.2, 0.1.3.0, 0.1.3.1, 0.1.3.2, 0.1.3.3, 0.1.3.4, 0.1.4.0, 0.1.4.1, 0.1.4.2, 0.1.4.3, 0.1.4.4, 0.1.4.5, 0.2.0.0, 0.2.1.0, 0.2.2.0
Dependencies base (==4.8.*), ghc-prim, mmorph (>=1.0 && <1.2), mtl (>=2.1 && <2.3), transformers (>=0.3 && <0.5) [details]
License BSD-3-Clause
Author michaelt
Maintainer what_is_it_to_do_anything@yahoo.com
Revised Revision 1 made by HerbertValerioRiedel at Wed Aug 29 08:15:08 UTC 2018
Category Data, Pipes
Home page https://github.com/michaelt/streaming
Bug tracker https://github.com/michaelt/streaming/issues
Source repo head: git clone https://github.com/michaelt/streaming
Uploaded by MichaelThompson at Sun Aug 16 01:44:13 UTC 2015
Distributions LTSHaskell:0.2.2.0, NixOS:0.2.2.0, Stackage:0.2.2.0
Downloads 10512 total (170 in the last 30 days)
Rating 2.5 (votes: 6) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI

Modules

[Index]

Downloads

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'.

Maintainer's Corner

For package maintainers and hackage trustees