我有一个在haskell中编译成功的函数。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
如果我完全离开这个案例,我会得到同样的错误信息。
我希望它显示我的错误消息。希望有人能够发现我的问题。谢谢!
您可以通过正确查看错误消息来了解这一点:它是一个_compiler error_,并且在'it'的等式中:it = suffix-5'很清楚地表明问题与' f-5'被解析为'f-5'。 – leftaroundabout 2013-02-14 10:55:02