1.4 错误处理

chylli's picture

1.4 错误处理
我们要给我们的程序加上错误处理部分。我们需要先创建一个data type用来表
示各种错误。

module TaplError where
import Control.Monad.Error --引入Error class的声明。

data TaplError = ParserError String
               | EvalError String
               | TypeMismatch String
               | UndefinedVarialbe String
               | Default String

现在它可以表示这几种错误: 解析错误,运算错误,类型匹配错误,未定义,
及其它。

然后将其声明为Show的一个实例:

instance Show TaplError where
    show (ParserError msg) = "Parse Error: " ++ msg
    show (EvalError msg) = "Evaluation Error: " ++ msg

...... full content is only available to community members.