逆天

可以使用警衛來定義函式,可以將其視為根據輸入對行為進行分類。

採用以下函式定義:

absolute::Int -> Int  -- definition restricted to Ints for simplicity
absolute n = if (n < 0) then (-n) else n

我們可以使用警衛重新安排它:

absolute::Int -> Int
absolute n 
  | n < 0 = -n
  | otherwise = n

在這種情況下,otherwiseTrue 的一個有意義的別名,所以它應該永遠是最後一個守衛。