我正在尝试使用我自己的构造函数“Z95”创建我自己的Fractional实例,该构造函数定义为:
data Z95 = Z95 Classe deriving (Eq)
我已经使用这个构造函数定义了一个Num实例,但是没有理由这个Fractional的实例不起作用:/
instance Num Z95 where
(+) (Z95 a) (Z95 b) = z95 (representant (plusMod 95 a b))
(*) (Z95 a) (Z95 b) = z95 (representant (mulMod 95 a b))
fromInteger n = z95 n
negate (Z95 x) = z95 (-(representant x) + 95)
所以,这是分数实例:
instance Fractional Z95 where
(/) c1 c2 = (Z95 c1) * (Z95 (invMod c2)
当我尝试将文件加载到GHCI时,它告诉我:
parse error (possibly incorrect indentation or mismatched brackets)
即使我更改了实例声明之后的代码,也会显示此消息。
答案 0 :(得分:4)
正如错误消息所示,您的括号不匹配:
(/) c1 c2 = (Z95 c1) * (Z95 (invMod c2)
^