I am pleased to announce the hackage release of iteratee-0.1.0. This library implements enumerators and iteratees as proposed by Oleg Kiselyov (http://okmij.org/ftp/Haskell/Iteratee/). Significant differences from his original code include:
- Seeking is allowed within any monad; the specific RBIO monad is neither required nor provided. - Data buffers may be of arbitrary types as specified by the StreamChunk type class. This allows for user-provided buffer types (e.g. arrays, vectors, etc.). Instances are provided for lists and ByteStrings. This, in conjunction with seeking, allows for efficient processing of binary data in addition to text. - Cross-platform support. Currently this is slightly less efficient than the Posix operations, but should run on any system targeted by a Haskell compiler. Although basic I/O specific enumerators are provided, this library should allow seamless interoperation with user-provided iteratees and enumerators. I hope that this flexibility will encourage a much wider adoption of enumerator-based IO in the Haskell community. This library is experimental, and the API is subject to change if it will seem advantageous. Patches are welcome: the darcs repo is at http://inmachina.net/~jwlato/haskell/iteratee . Discussion and comments are also always welcome. I would like to acknowledge several individuals for their contributions and suggestions: Oleg Kiselyov Paulo Tanimoto Johan Tibell Cheers, John Lato _______________________________________________ Haskell mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell
