not necessarily ... there could be contradictory sets of methods! :)like the minimal sets for Field type class, the xor would be for defining '/' in terms of reciprocal and times or vice versa (/ vs recip) and likewise (negate vs minus) etc etc_______________________________________________On Wed, Oct 27, 2021 at 6:38 AM Henning Thielemann <lemming@henning-thielemann.de> wrote:
On Mon, 25 Oct 2021, Carter Schonwald wrote:
> i agree with Tom and Hecate,more strongly:
> https://github.com/ghc/ghc/blob/98aa29d3fe447cce3407e6864b015892244bb475/libraries/ghc-prim/GHC/Classes.hs#L142-L150
> the current definition DOES NOT require defining both.
>
> as it currently stands, you only need to define one of '==' XOR '/='
>
> this actually suggests an interesting and DIFFERENT ecosystem improvement, (ignoring IEEE non-signalling NANs),
> namely we add support for XOR to minimal pragma syntax and issue a warning
>
> perhaps something like adding (XOR "reason String" clauseExpr1 clauseexpr2) ?
The problem of implementing two methods in a contradictory way arises for
any OR in MINIMAL pragma, right?
Libraries mailing list
Libraries@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries