... | ... | @@ -103,13 +103,24 @@ This fix is perhaps a bit surprising, as the `Show (OpWithAliases (Op rep))` con |
|
|
|
|
|
## Library changes
|
|
|
|
|
|
### New quantified constraint superclasses on `Eq1`, `Show1` etc
|
|
|
### New quantified superclasses on `Eq1`, `Show1` etc
|
|
|
|
|
|
The classes `Eq1`, `Ord1`, `Show1`, `Read1`, `Eq2`, `Ord2`, `Show2`, `Read2` have acquired new superclasses, e.g.
|
|
|
[CLC proposal #10](https://github.com/haskell/core-libraries-committee/issues/10) introduced new superclasses on the classes `Eq1`, `Ord1`, `Show1`, `Read1`, `Eq2`, `Ord2`, `Show2`, `Read2`, e.g.
|
|
|
|
|
|
```diff
|
|
|
-class Eq1 f where
|
|
|
+class (forall a. Eq a => Eq (f a)) => Eq1 f where
|
|
|
-class Eq1 f
|
|
|
+class (forall a. Eq a => Eq (f a)) => Eq1 f
|
|
|
```
|
|
|
|
|
|
To adapt to this change, you might need to define new instances or add contexts to satisfy these superclass constraints. A detailed migration guide is available [here](https://github.com/haskell/core-libraries-committee/blob/main/guides/functor-combinator-instances-and-class1s.md).
|
|
|
|
|
|
### New quantified `Functor` superclass on `Bifunctor`
|
|
|
|
|
|
As per [CLC proposal #91](https://github.com/haskell/core-libraries-committee/issues/91), the `Bifunctor` class has a new `Functor` superclass:
|
|
|
|
|
|
```diff
|
|
|
-class Bifunctor bi
|
|
|
+class (forall a. Functor (bi a)) => Bifunctor bi
|
|
|
```
|
|
|
|
|
|
Adapting to this change might require defining missing `Functor` instances for types implementing the `Bifunctor` class. |