我對Haskell相當新,但確實掌握了大部分的基礎知識。但有一件事我只是無法弄清楚。考慮我的例子如下:爲什麼我的Haskell函數不接受負數?
example :: Int -> Int
example (n+1) = .....
這個例子的(n + 1)部分以某種方式阻止了負數的輸入,但我無法理解如何。例如..如果輸入是(-5),我希望n只是(-6),因爲(-6 + 1)是(-5)。測試時輸出如下:
Program error: pattern match failure: example (-5)
任何人都可以向我解釋爲什麼這不接受負數?
請注意'n + k'模式將從Haskell語言規範(Haskell 2010)的下一個版本中刪除。據我所知,他們很少用於實踐(雖然我相信有人會找到一個軼事的例子)。所以我建議不要使用它們。 – 2010-02-12 00:16:18