Haskell 学习笔记 (6)

  • 一个简单的 todo list

(Read this Article →)

Haskell 学习笔记 (5)

  • Haskell 是纯函数式语言,函数无副作用,但是 IO 操作肯定会有副作用, Haskell 将 IO 操作分离了出来
  • Haskell 程序的编译
  • putStrLn :: String -> IO ()
  • putStrLn 取一个字符串作为参数,返回一个 I/O action ,而IO操作的返回类型为 ()

(Read this Article →)

Haskell 学习笔记 (4)

  • Eq 类型类可以使用 ==/=
  • Ord 类型类可以比较大小
  • Show 类型类可以直接转换为字符串
  • Read 类型类可以从字符串转为该类型
  • Bounded 类型类有上下界
  • Enum 类型类可以枚举,对所有值构造器都是空元的数据类型,我们可以让它成为 Enum 类型类的成员

(Read this Article →)

Haskell 学习笔记 (3)

  • 导入模块 import Data.List
  • 导入模块必须放置在任何函数的定义之前
  • 导入模块后,模块内的函数就进入了全局命名空间
  • GHCi 导入模块 :m + Data.List Data.Map Data.Set
  • 导入部分函数 import Data.List (nub, sort)
  • 忽略部分函数 import Data.List hiding (nub)
  • 限定导入 import qualified Data.Map
  • 限定导入后的函数需要指定前缀 Data.Map.filter
  • 限定导入可以使用别名 import qualified Data.Map as M

(Read this Article →)