http://www.ibm.com/developerworks/cn/java/j-cb07186.html
1. 构造符号
:
比如:
1:2:3:[]
而常用的
[1,2,3]
是一种语法糖(http://en.wikipedia.org/wiki/Syntactic_sugar)
2. 一切都是函数
函数定义语法:
函数名 :: 参数类型中可能用到的基本类型 基本类型名 => 参数1 -> 参数2 -> 返回值类型
函数名 模式1 = 实现1
函数名 模式2 = 实现2
......
3. 从集合中取出元素
元素 <- 集合
4. 定义为
名称 :: 定义
5. 模式
基本类型
a b
Tuple
a b
(x1, y1)(x2, y2)
List
像
x:xs
这样的模式可以将list的头部绑定为x,尾部绑定为xs。如果这list只有一个元素,那么xs就是一个空list。
[]
(x:xs)
(x:_)
(x:y:[])