3
我正在編寫haskell中的一個小lisp解釋器。在這個過程中,我定義了這個數據類型,以獲得更少的類型數字。爲什麼Hugs在我的數據類型聲明中抱怨`|`?
data Number = _Int Integer
| _Rational Rational
| _Float Double
deriving(Eq,Show)
與擁抱編譯此失敗,出現以下錯誤:
ERROR "types.hs":16 - Syntax error in data type declaration (unexpected `|')
線16與在上面的代碼中的第一|
線。
什麼編譯您使用的? GHCi(v 6.10.4)抱怨下劃線,但是當我s/_/M /時,它編譯得很好。 – perimosocordiae 2010-03-17 23:10:36
我正在使用hugs98 200609-4。這確實是導致問題的下劃線。 :) – keiter 2010-03-17 23:25:02
正如一個側面說明,我會建議幾乎在任何情況下GHC超過擁抱。許多較老的文件都說Hugs對初學者更好,因爲它擁有REPL,但GHCi實際上比Hugs提供更好的REPL並非如此。 – Chuck 2010-03-17 23:30:54