エラーメッセージを返すようにエラー判定を加える。例外処理は例外を投げる可能性がある計算を表す型を導入する。形式(aは型Aの値)をした値をとる。評価器をこの型に適合させるのは簡単だが、退屈である。}}各評価器の呼び出し時に、結果の形式を確認する必要がある。例外が投げられた場合は、再度例外が投げられ、値の場合は、処理される。zero")バリエーション2:状態(State)評価中の除法(割り算)の回数をカウントすることを考える。状態は状態に作用する計算を表す型を導入する。値は初期状態を取り、最終状態とペアになった計算の値を戻り値にする関数である。評価器をこの型に適合させるのは簡単だが、退屈である。