如何定义像1这样的对象?

时间:2017-04-06 07:57:35

标签: haskell

在haskell 1 :: Num a => a

我怎么能(如果以任何方式)复制这种行为,即 定义类型类MyNum,(可能是类型和实例) 和一个对象One 输入One :: MyNum a => a

1 个答案:

答案 0 :(得分:4)

class MyNum a where
  one :: a

现在one :: MyNum a => a。然后你可以写

instance MyNum Int where
  one = 1

等等。

不确定实际想要实现的目标,或者这只是玩具实验或其他什么。但我认为这回答了字面上提出的问题。