单词计数 :: 字符串 -> 字符串
putStr(wordCounts“hello clouds\nhello sky”)
主要
主要的
模块 主要 哪里 主要的 :: IO(输入输出) () 主要的 = ( ... )
主要
IO(输入输出) ()
IO(输入输出) ()
putStr(输入Str) :: 字符串 -> IO(输入输出) () 打印 :: 显示 一 => 一 -> IO(输入输出) () 相互作用 :: ( 字符串 -> 字符串 ) -> IO(输入输出) ()
相互作用
单词计数
主要的 :: IO(输入输出) () 主要的 = 相互作用 单词计数 单词计数 :: 字符串 -> 字符串 单词计数 = ( ... ) --和以前一样
countWords.hs
ghc—生成countWords.hs
示例.txt
./countWords<示例.txt
第1组 x个 = 年 + 年 哪里 年 = (f) x个 第二组 x个 = (f) x个 + (f) x个
y=f x
地图 克 . 地图 (f) == 地图 ( 克 . (f) )
地图 (f) ( X轴 ++ 年 ) == 地图 (f) X轴 ++ 地图 (f) 年
滤波器 第页 ( X轴 ++ 年 ) == 滤波器 第页 X轴 ++ 滤波器 第页 年
颠倒 ( X轴 ++ 年 ) == 颠倒 年 ++ 颠倒 X轴
颠倒 . 地图 (f) == 地图 (f) . 颠倒
input()-input()
15
12
输入
输入()
获取线路
你好
writeFile“hello.txt”“你好,世界!”
readFile“hello.txt”
putStr(输入Str) :: 字符串 -> IO(输入输出) () 获取线路 :: IO(输入输出) 字符串 写入文件 :: 文件路径 -> 字符串 -> IO(输入输出) () readFile(读取文件) :: 文件路径 -> IO(输入输出) 字符串 类型 文件路径 = 字符串
IO(输入输出)
IO(输入输出)
获取线路
readFile(读取文件)
s<-readFile“hello.txt”
(s,反向s)
<-
readFile(读取文件) “hello.txt” :: IO(输入输出) 字符串
秒 :: 字符串
秒=
readFile(读取文件) “你好.txt”
做
<-
显示差异 :: IO(输入输出) () 显示差异 = 做 输入StrLn “输入两个数字:” x个 <- 读取Ln 年 <- 读取Ln putStr(输入Str) “区别在于:” 打印 ( x个 - 年 )
读取Ln :: 阅读 一 => IO(输入输出) 一 打印 :: 显示 一 => 一 -> IO(输入输出) () putStr(输入Str) :: 字符串 -> IO(输入输出) () 输入StrLn :: 字符串 -> IO(输入输出) ()
显示差异
15
12
获取差异 :: IO(输入输出) 整数 获取差异 = 做 x个 <- 读取Ln 年 <- 读取Ln 返回 ( x个 - 年 ) 显示差异 :: IO(输入输出) () 显示差异 = 做 d日 <- 获取差异 putStr(输入Str) “区别在于:” 打印 d日
返回
返回 :: 一 -> IO(输入输出) 一
IO(输入输出)
做
做
IO(输入输出)
copyFile(复制文件) :: 文件路径 -> 文件路径 -> IO(输入输出) () copyFile(复制文件) 从 到 = 做 秒 <- readFile(读取文件) 从 写入文件 到 秒
sortFile(排序文件) :: 文件路径 -> 文件路径 -> IO(输入输出) () sortFile(排序文件) 从 到 = 做 秒 <- readFile(读取文件) 从 写入文件 到 ( 分拣线 秒 ) 分拣行 = 无线条 . 分类 . 线
sortFile(排序文件)
分拣行
do两次 :: IO(输入输出) 一 -> IO(输入输出) ( 一 , 一 ) do两次 国际奥委会 = 做 x个 <- 国际奥委会 年 <- 国际奥委会 返回 ( x个 , 年 ) 不要 :: IO(输入输出) 一 -> IO(输入输出) () 不要 国际奥委会 = 返回 ()