我有一个在haskell中成功编译的函数。
它看起来像这样:
suffix :: Int -> String
suffix i
| i==0 = "th"
| i==1 = "st"
| i==2 = "nd"
| i==3 = "rd"
| i>=4 || i<=9 = "th"
| i<0 = error "Must be positive integer" ----------NOT WORKING?
| otherwise = suffix(i `rem` 10)
i<0
我至少可以通过警卫的错误行来判断它是行不通的。当我进入 GHCI 并在数字上添加“-”时:suffix -5
如果我完全关闭此案例,我会收到相同的错误消息。
我希望它清楚地显示我的错误消息。希望有人能发现我的问题。谢谢!