我发现Oleg的关于Iteratee的文档有点难以理解。特别是因为他在Haskell-Cafe的帖子中的某些功能不在迭代库(如enum_file
)中。iteratee简介或简单的例子?
有没有一个很好的介绍iteratee某处,通过像打开文件/套接字,读取和处理数据的基础知识。
我发现Oleg的关于Iteratee的文档有点难以理解。特别是因为他在Haskell-Cafe的帖子中的某些功能不在迭代库(如enum_file
)中。iteratee简介或简单的例子?
有没有一个很好的介绍iteratee某处,通过像打开文件/套接字,读取和处理数据的基础知识。
据我所知,目前还没有很好的介绍。我通过重写Oleg的代码来了解它们。所以这肯定是一条路径:实现一个基于左侧的IO层。
我有一些monoidal解析幻灯片,建立基于Iteratee的Parsec流作为中间结果,你可能会觉得有用。
上Iteratees一个很好的文章最近发表在Monad的读者:
http://themonadreader.wordpress.com/2010/05/12/issue-16
这篇文章有大量的实例,以及可选的实施方式,在复杂性的增加,因为它去。
我同意这篇文章是一个非常很好的介绍。 – Magnus 2010-06-23 20:22:32
对于enumerator包(其中包含迭代器),有一个如何使用实现的示例,而不是显示如何重新实现该包。它显示了unix find命令的替代实现,如Real World Haskell book(第9节)中所述。
http://www.mew.org/~kazu/proj/enumerator/
你很可能我们也以此为出发点,用其他实现。
这是为Scala/Play2,但可能会帮助一些人: http://mandubian.com/2012/08/27/understanding-play2-iteratees-for-normal-humans/ – 2012-09-26 19:39:14