[Haskell-cafe] Mystery of an Eq instance

Stijn van Drongelen rhymoid at gmail.com
Sat Sep 21 17:15:04 CEST 2013


On Sep 21, 2013 4:17 PM, "Bob Hutchison" <hutch-lists at recursive.ca> wrote:
>
>
> On 2013-09-21, at 4:46 AM, Stijn van Drongelen <rhymoid at gmail.com> wrote:
>
>> I do have to agree with Damodar Kulkarni that different laws imply
different classes. However, this will break **a lot** of existing software.
>
>
> You could argue that the existing software is already broken.
>

I agree, but that might also be hardly relevant when fixing an existing
language.

>> If we would do this, only Eq and Ord need to be duplicated, as they
cause most of the problems. Qualified imports should suffice to
differentiate between the two.
>>
>>     import qualified Data.Eq.Approximate as A
>>     import qualified Data.Ord.Approximate as A
>>
>>     main = print $ 3.16227766016837956 A.== 3.16227766016837955
>
>
> As soon as you start doing computations with fp numbers things get much
worse.

Only when you start reasoning about (in)equalities. Really, in (a + b) * c
= a * c + b * c, it isn't + or * that's causing problems, but =.

I'm going to look at Kmett's work and that ltu link when I'm home ;)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130921/1f449f1e/attachment.htm>


More information about the Haskell-Cafe mailing list