清單

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