Make Eq type class single method
Joachim Breitner
mail at joachim-breitner.de
Wed Oct 20 14:55:15 UTC 2021
Hi,
oh, and I completely forgot to add:
Am Mittwoch, dem 20.10.2021 um 16:39 +0200 schrieb Joachim Breitner:
> If no: would it be worth removing it?
>
> Yes, every change is annoying, but if are going to keep using Haskell
> the next 30 days, it may pay off? And it might not be too bad: Remove
> it from base, but teach GHC to not error out if an instance defines
> (/=), but print a warning and otherwise ignore it. Libraries can remove
> it if it is defined, which is a backwards-compatible change.
And an (important?) benefit would be that now Eq would then be a
single-method class, which are compiled by GHC more efficiently – they
essentially _are_ the (==) function, not a tuple of both methods. For
something as low-level as (==), this might be measurable…
Cheers,
Joachim
--
Joachim Breitner
mail at joachim-breitner.de
http://www.joachim-breitner.de/
More information about the Libraries
mailing list