On Wed, Oct 2, 2013 at 6:57 PM, Stijn van Drongelen <rhymoid@gmail.com> wrote:

On Wed, Oct 2, 2013 at 5:36 PM, Roman Cheplyaka <roma@ro-che.info> wrote:
* Stijn van Drongelen <rhymoid@gmail.com> [2013-10-02 15:46:42+0200]
> I do think something has to be done to have an Eq and Ord with more strict
> laws.
>
> * Operators in Eq and Ord diverge iff any of their parameters are bottom.

This outlaws the Eq instances of lists, trees, and other (co)recursive
types.

Furthermore, in this formulation, even Eq for tuples is illegal, because

  (undefined, something) == somethingElse

is going to diverge.

Roman

I knew this was going to bite me in the ass. Let me try again:

* Operators in Eq and Ord may only diverge when any of their parameters are bottom.

What am I thinking. Scratch that.