【发布时间】:2012-09-05 21:03:29
【问题描述】:
algebra/2.1.1.2/doc/html 的文档显示了大量的类型类。
我如何声明一个有问题的结构必须配备一个交换关联运算和一个单位/单位元素,但没有其他任何东西(逆、分布等)?
我在考虑
reduce :: Monoid m => (a -> m) -> [a] -> m
但是 Data.Monoid 的实例不应该是可交换的,我希望我的函数的用户通过查看类型来了解他们需要可交换性才能使函数工作。
【问题讨论】:
标签: haskell hackage abstract-algebra