6
的Control.Exception文檔說我可以做以下創建我自己的異常:如何在Haskell中定義自定義異常?
data MyException = ThisException | ThatException
deriving (Show, Typeable)
instance Exception MyException
如果我粘貼到一個文件並編譯(進口Control.Exception和Data.Typeable後),我得到:
exp.hs:6:20:
Can't make a derived instance of `Typeable MyException'
(You need -XDeriveDataTypeable to derive an instance for this class)
In the data type declaration for `MyException'
我必須打開此擴展才能擁有用戶定義的異常嗎?如果沒有,請提供一個例子。謝謝。
這是否意味着一般情況下,Haskell中沒有用戶定義的異常? – me2
如果您的意思是Haskell標準,那麼沒有用戶定義的例外。如果您的意思是由GHC實施的擴展語言,那麼它們確實存在,如上所述。 –