Cross-post from Slack:

Hey, could someone tell me why this code snippet doesn’t work? (No type class instance was found for Data.Eq.Eq (Extended a0))

```
data Extended a = Finite a | Infinite
instance extendedOrd :: (Ord a) => Ord (Extended a) where
compare (Finite x) (Finite y) = compare x y
compare Infinite (Finite _) = GT
compare (Finite _) Infinite = LT
compare Infinite Infinite = EQ
```