Haskell语言学习笔记(75)Conduit
安装 conduit
$ cabal install conduit
Installed conduit-1.3.0.3
Prelude> import Conduit
Prelude Conduit>
Conduit
Conduit 是一个处理流的库。
Prelude Conduit> :{
Prelude Conduit| print $ runConduitPure$ yieldMany [1..10].| mapC (+ 1).| sinkList
Prelude Conduit| :}
[2,3,4,5,6,7,8,9,10,11]
应用实例
{-# LANGUAGE ExtendedDefaultRules #-}
import Conduitmagic :: Int -> IO Int
magic x = doputStrLn $ "I'm doing magic with " ++ show xreturn $ x * 2main :: IO ()
main = doputStrLn "List version:"mapM magic (take 10 [1..]) >>= mapM_ print . takeWhile (< 18)putStrLn ""putStrLn "Conduit version:"runConduit$ yieldMany [1..].| takeC 10.| mapMC magic.| takeWhileC (< 18).| mapM_C print
List version:
I'm doing magic with 1
I'm doing magic with 2
I'm doing magic with 3
I'm doing magic with 4
I'm doing magic with 5
I'm doing magic with 6
I'm doing magic with 7
I'm doing magic with 8
I'm doing magic with 9
I'm doing magic with 10
2
4
6
8
10
12
14
16Conduit version:
I'm doing magic with 1
2
I'm doing magic with 2
4
I'm doing magic with 3
6
I'm doing magic with 4
8
I'm doing magic with 5
10
I'm doing magic with 6
12
I'm doing magic with 7
14
I'm doing magic with 8
16
I'm doing magic with 9
Haskell语言学习笔记(75)Conduit相关推荐
- Haskell语言学习笔记(30)MonadCont, Cont, ContT
MonadCont 类型类 class Monad m => MonadCont m wherecallCC :: ((a -> m b) -> m a) -> m a ins ...
- Haskell语言学习笔记(41)Parsec(1)
Parsec Parsec是一个词法及语法分析器. 匹配字符与字符串 Prelude Text.Parsec> parseTest anyChar "a" 'a' Prelu ...
- Haskell语言学习笔记(73)Existentials
Existentials(存在类型) Existentially quantified types(Existentially types,Existentials)是一种将一组类型归为一个类型的方式 ...
- C语言如何加缓冲,C语言学习笔记之输出缓冲
在c语言中经常用到输出函数printf,当我们像往常一样在输出函数中输入我们的想要的输出的东西后加\n换行 验证结果如我们输出的一样 如果我们在后面加入死循环会不会出现这些语句呢 结果卡死了,可还是输 ...
- R语言学习笔记(1~3)
R语言学习笔记(1~3) 一.R语言介绍 x <- rnorm(5) 创建了一个名为x的向量对象,它包含5个来自标准正态分布的随机偏差. 1.1 注释 由符号#开头. #函数c()以向量的形式输 ...
- R语言学习笔记 07 Probit、Logistic回归
R语言学习笔记 文章目录 R语言学习笔记 probit回归 factor()和as.factor() relevel() 案例11.4复刻 glm函数 整理变量 回归:Logistic和Probit- ...
- R语言学习笔记——高级篇:第十四章-主成分分析和因子分析
R语言 R语言学习笔记--高级篇:第十四章-主成分分析和因子分析 文章目录 R语言 前言 一.R中的主成分和因子分析 二.主成分分析 2.1.判断主成分的个数 2.2.提取主成分 2.3.主成分旋转 ...
- C语言学习笔记Day3——持续更新中... ...
上一篇文章C语言学习笔记Day2--持续更新中- - 八. 容器 1. 一维数组 1.1 什么是一维数组 当数组中每个元素都只带有一个下标(第一个元素的下标为0, 第二个元素的下标为1, 以此类推)时 ...
- 梓益C语言学习笔记之链表&动态内存&文件
梓益C语言学习笔记之链表&动态内存&文件 一.定义: 链表是一种物理存储上非连续,通过指针链接次序,实现的一种线性存储结构. 二.特点: 链表由一系列节点(链表中每一个元素称为节点)组 ...
- 6.方法(go语言学习笔记)
6.方法(go语言学习笔记) 目录 定义 匿名字段 方法集 表达式 1. 定义 方法是与对象实例绑定的特殊函数. 方法是面向对象编程的基本概念,用于维护和展示对象的自身状态.对象是内敛的,每个实例对象 ...
最新文章
- vue 搭建脚手架 的教程
- C#二维和多维数组编程实例
- [Swift算法]巴比伦法(牛顿迭代法)求平方根
- php + mssql乱码
- HAProxy介绍及配置文件详解
- Aspose.Words操作Word.PDF,让图片和文本垂直居中,水平居中解决方案
- Winodws 10中pyCharm 2017安装
- git快速入门之一:创建本地仓库并同步到远程
- Prim POJ 2031 Building a Space Station
- 2022-2028全球赛车模拟器游戏方向盘行业调研及趋势分析报告
- python网格搜索、贝叶斯调参实战
- H.264 AVC 编解码标准
- adobe怎么统计字数,在Adobe Reader中统计PDF中的文字数
- html5学生大作业,帮同学做的大一大作业:《我的家乡—郑州》 - 梦涵的帅爸爸...
- 都有云技术了,传统动态vps还有什么用?
- oeasy和你玩转微信公众号-刘青-专题视频课程
- numpy.loadtxt() 处理csv文件的正确姿势
- 冯诺依曼结构图-2020-09-05
- 数据结构——图的数组(邻接矩阵)表示法
- 在 Power BI 中筛选每类产品的前三名
热门文章
- 新闻——覃雄派、王会举、杜小勇、王珊论文两次入选“领跑者5000—中国精品科技期刊顶尖学术论文”
- 再观《一步之遥》观后感
- 内核抢占PREEMPT_RT
- 使用 requireJS 的shim参数 解决插件jequery 插件问题
- win10新建文本改html乱码,win10专业版文字乱码该怎么办?解决方法是什么?
- 计算机软考高级 天津落户,官宣:软考高级可作为高级职称人才引进落户上海...
- 加扣扣群所有脚本免费使用
- Android两种方式实现横向滚动图标+指示器
- 什么句子可以暗示自己恋爱了?
- 给UI/UX设计师推荐5个国外网站