2
我在看Plurasight中的'Haskell Fundamentals Part 1'。在第二章中,作者用表示一個非常簡單的函數,如果其中有。當我嘗試它時,我每次嘗試帶負數的函數時都會出錯。下面是函數爲什麼負數在下面的條件中會引發錯誤?
posOrNeg x =
if x >= 0
then "Positive"
else "Negative"
當我試圖用正數的方法,它工作得很好,但是當我打電話與負數的方法,winGHCi拋出下面的錯誤。
「沒有用於(顯示(a0 - > [Char])))由於使用」打印「而產生的實例...」
更多地是它,那麼這裏的功能呢?
是的,我沒有通過括號中的負數。我以前不知道那個區別。有道理。 – Nair 2014-09-21 04:19:01
請注意,使用'-XNegativeLiterals',您可以執行'posOrNeg -42'(但不是'posOrNeg - 42')。 – leftaroundabout 2014-09-21 08:23:59
有時使用'negate'會比較容易使用,這取決於情況 – Carsten 2014-09-23 20:43:50