管道
正如 hackage 页面描述:
管道是一个干净而强大的流处理库,可让你构建和连接可重用的流组件
通过流程实现的程序通常可以简洁和可组合,简单,短的功能允许你在 Haskell 类型系统的支持下轻松插入或退出功能。
await::Monad m => Consumer' a m a
从上游拉取一个值,其中 a
是我们的输入类型。
yield::Monad m => a -> Producer' a m ()
生成一个值,其中 a
是输出类型。
强烈建议你阅读嵌入式 Pipes.Tutorial
软件包,它可以很好地概述管道的核心概念以及 Producer
,Consumer
和 Effect
如何相互作用。