streaming-0.1.0.3: streaming.cabal
name: streaming
version: 0.1.0.3
cabal-version: >=1.10
build-type: Simple
synopsis: A general free monad transformer
optimized for streaming applications.
description: `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
license: BSD3
license-file: LICENSE
author: michaelt
maintainer: what_is_it_to_do_anything@yahoo.com
stability: Experimental
homepage: https://github.com/michaelt/streaming
bug-reports: https://github.com/michaelt/streaming/issues
category: Data, Pipes
source-repository head
type: git
location: https://github.com/michaelt/streaming
library
exposed-modules: Streaming,
Streaming.Prelude,
Streaming.Internal
-- other-modules:
other-extensions: LambdaCase, RankNTypes, EmptyCase,
StandaloneDeriving, FlexibleContexts,
DeriveDataTypeable, DeriveFoldable,
DeriveFunctor, DeriveTraversable,
UndecidableInstances
build-depends: base >=4.7 && <4.9
, mtl >=2.1 && <2.3
, mmorph >=1.0 && <1.2
, transformers >=0.3 && <0.5
, ghc-prim
default-language: Haskell2010