Iteratee/Enumerator系の話題がHaskell界隈で騒がれて久しい (日本語の紹介記事)。これらはHaskellで細粒度のリソース制御ができるストリーム処理の方法で、例外処理もやりやすい、という触れ込みだった。曰く、ストリーム処理はリソースの消費量の点で(オンメモリに全てを置くよりも)優れているが、hGetContents::IO Handle->Stringのような遅延IOはファイルのクローズなどリソースの制御が難しい。それを改良したのがIteratee/Enumerator系のライブラリだそうだ。 Conduit iteratee/enumeratorの改良を試みているのが Conduit (コンディット?)だ(日本語の紹介記事)。 最近でもずっと改良がつづいているようで(参考:tanakhさんの発表資料)、例えばSource/Conduit/Sinkの型がPipeに統