- 
  StackOverflow 文件
- 
  Haskell Language 教程
- 
  清單
- [a]型別相當於- [] a。
- []構造空列表。
- 函式定義 LHS 中的 [],例如f [] = ...,是空列表模式。
- x:xs構造一個列表,其中元素- x被新增到列表- xs之前
- f (x:xs) = ...是非空列表的模式匹配,其中- x是頭部,- xs是尾部。
- f (a:b:cs) = ...和- f (a:(b:cs)) = ...是一樣的。它們是至少兩個元素列表的模式匹配,其中第一個元素是- a,第二個元素是- b,列表的其餘部分是- cs。
- f ((a:as):bs) = ...與- f (a:(as:bs)) = ...不同。前者是非空列表列表的模式匹配,其中- a是頭部的頭部,- as是頭部的尾部,- bs是尾部。
- f (x:[]) = ...和- f [x] = ...是一樣的。它們是恰好一個元素列表的模式匹配。
- f (a:b:[]) = ...和- f [a,b] = ...是一樣的。它們是兩個元素列表的模式匹配。
- f [a:b] = ...是一個模式匹配,它只包含一個元素的列表,其中元素也是一個列表。- a是元素的頭部,- b是元素的尾部。
- [a,b,c]與- (a:b:c:[])相同。標準列表表示法只是- (:)和- []建構函式的語法糖。
- 你可以使用 all@(x:y:ys)將整個列表稱為all(或你選擇的任何其他名稱),而不是再次重複(x:y:ys)。