Name: pipes Version: 2.1.0 Cabal-Version: >=1.10.1 Build-Type: Simple License: BSD3 License-File: LICENSE Copyright: 2012 Gabriel Gonzalez Author: Gabriel Gonzalez Maintainer: Gabriel439@gmail.com Stability: Experimental Bug-Reports: mailto:Gabriel439@gmail.com Synopsis: Compositional pipelines Description: \"Iteratees done right\". This library implements iteratees\/enumerators\/enumeratees simply and elegantly, using different naming conventions. . Advantages over traditional iteratee implementations: . * /Simpler semantics/: There is only one data type ('Pipe'), two primitives ('await' and 'yield'), and only one way to compose 'Pipe's ('.'). In fact, this library implements its entire behavior using its 'Monad' and 'Category' instances and enforces their laws strictly! . * /Clearer naming conventions/: Enumeratees are called 'Pipe's, Enumerators are 'Producer's, and Iteratees are 'Consumer's. 'Producer's and 'Consumer's are just type synonyms for 'Pipe's with either the input or output end closed. . * /Pipes are Categories/: You compose them using ordinary composition. . * /Intuitive/: Pipe composition is easier to reason about because it is a true 'Category'. Composition works seamlessly and you don't have to worry about restarting iteratees, feeding new input, etc. \"It just works\". . * /"Vertical" concatenation works flawlessly on everything/: ('>>') concatenates 'Pipe's, but since everything is a 'Pipe', you can use it to concatenate 'Producer's, 'Consumer's, and even intermediate 'Pipe' stages. Vertical Concatenation always works the way you expect, picking up where the previous 'Pipe' left off. . Check out "Control.Pipe.Tutorial" for a copious introductory tutorial and "Control.Pipe" for the actual implementation. Category: Control, Enumerator Tested-With: GHC ==7.4.1 Source-Repository head Type: git Location: https://github.com/Gabriel439/Haskell-Pipes-Library Library Build-Depends: base >= 4 && < 5, transformers, void, index-core Exposed-Modules: Control.Frame, Control.Frame.Tutorial, Control.IMonad.Trans.Free, Control.Monad.Trans.Free, Control.Pipe, Control.Pipe.Tutorial GHC-Options: -O2 Default-Language: Haskell2010