也许我没有找到正确的地方,但我找不到Haskell中的间隔类型类 . 在我看来,这种抽象在许多情况下都很有用,因为在许多领域中使用了区间 .
这也可以通过实现某种间隔结构的hackage上的不同包的数量来看出(list of interval packages) .
使用类型类实现不同类型的间隔(开放,封闭,...)会不会令人困惑,还是有其他概念可以帮助我构建自己的间隔,除了自己的数据类型?
也许我没有找到正确的地方,但我找不到Haskell中的间隔类型类 . 在我看来,这种抽象在许多情况下都很有用,因为在许多领域中使用了区间 .
这也可以通过实现某种间隔结构的hackage上的不同包的数量来看出(list of interval packages) .
使用类型类实现不同类型的间隔(开放,封闭,...)会不会令人困惑,还是有其他概念可以帮助我构建自己的间隔,除了自己的数据类型?
1 回答
您可以使用-XFunctionalDependences和
-XFlexibleInstances
执行此操作(使用此编写任何实例...) . 我在下面写了一些代码和评论来说明:但是,正如评论者指出的那样,这是非常不必要的 . 有一个像
Interval
数据类型的东西可能更好,只有Interval Double
,Interval Int
等 . 我推荐intervals包 .