我正在收集Semigroup实例中连接半格的示例。正如您可能知道的,连接半格类似于半群,但需要额外的交换性和幂等性。通过对黑客库的快速扫描,我发现了以下示例:
Data.Semigroup.Max Data.Semigroup.All Data.Semigroup.AnyData.Map.Append.AppendMap我很好奇,您是否在Haskell库中遇到了其他(有趣和有用的)联接半格示例?
发布于 2019-12-02 07:24:20
有序严格地增加完全比较元素的列表(其中相等意味着相同)似乎在Data.List.Ordered.union下形成了data-ordlist包中的联接半格。
发布于 2019-12-02 19:29:59
Data.IntSet.IntSet的集合联合操作作为它的<>,这似乎符合您的标准。对于其他集合来说,这也可能是正确的,只要您对病态的Eq实例的元素破坏它没有意见。
对于Proxy来说也是如此,但这并不是您所能得到的最有用的信息。
https://stackoverflow.com/questions/59133631
复制相似问题