我发现Oleg关于Iteratee的文档有点难以理解。特别是因为他在Haskell-Cafe的帖子中的一些功能不在iteratee库中(如enum_file
)。
在某处有一个很好的介绍iteratee,这是一个基础知识,如打开文件/套接字,读取和处理数据。
答案 0 :(得分:23)
关于Iteratees的一篇好文章最近发表在Monad Reader中:
http://themonadreader.wordpress.com/2010/05/12/issue-16
这篇文章有很多例子,以及随着时间的推移而增加复杂性的替代实现。
答案 1 :(得分:6)
我有一些关于monoidal解析的幻灯片,它构建了基于Iteratee的Parsec流,作为您可能觉得有用的中间结果。
答案 2 :(得分:4)
据我所知,目前还没有很好的介绍。我通过重写奥列格的代码来学习它们。所以这肯定是一条路:实现一个基于左折叠的IO层。
答案 3 :(得分:3)
对于enumerator包(包括一个iteratee),有一个如何使用实现的示例,而不是展示如何重新实现包。它显示了unix find命令的替代实现,如Real World Haskell book(第9节)中所述。
http://www.mew.org/~kazu/proj/enumerator/
您也可以将它作为使用其他实现的起点。