iterIO: Iteratee-based IO with pipe operators
|Versions||0.1, 0.2, 0.2.2|
|Dependencies||array (>=0.3.0.1 && <2), attoparsec (>=0.8.5 && <2), base (>=4.3 && <6), bytestring (>=0.9 && <2), containers (>=0.3 && <2), filepath (>=1.2 && <2), HsOpenSSL (>=0.8 && <2), ListLike (>=1.0 && <4), mtl (>=184.108.40.206 && <3), network (>=2.3 && <3), old‑locale (>=220.127.116.11 && <2), process (>=18.104.22.168 && <2), stringsearch (>=0.3 && <2), time (>=1.1.4 && <2), unix (>=2.4 && <3) [details]|
|Category||System, Data, Enumerator|
|Source repo||head: git clone http://www.scs.stanford.edu/~dm/repos/iterIO.git|
|Uploaded||by DavidMazieres at Thu May 5 20:10:34 UTC 2011|
|Downloads||1220 total (11 in the last 30 days)|
|Rating||(no votes yet) [estimated by rule of succession]|
|Status||Docs uploaded by user
Build status unknown [no reports yet]
Hackage Matrix CI
Iteratee-based IO is an alternative to lazy IO that offers better error handling, referential transparency, and convenient composition of protocol layers or parsers. This package provides iteratees based around pipe operators for hooking together application components and directing data flow. New users should see the tutorial in the Data.IterIO module documentation. Highlights of the library include:
Heavy emphasis on ease of use, ease of learning, and uniformity of mechanism.
Consistent EOF and error handling to avoid resource leaks and other issues in corner cases.
A set of iteratee parsing combinators providing LL(*) parsing while generally not consuming large amounts of memory for backtracking.
Seamless integration with attoparsec for LL(1) parsing.
See Data.IterIO for a discussion of the differences between iterIO and the two previous iteratee implementations (iteratee and enumerator).
[Skip to Readme]
For package maintainers and hackage trustees