haskell / haskell/pvp

Type constraint changes

Open
#65 17 comments 0 reactions 0 assignees View on GitHub
Dominant language
CSS
Stars
40
Forks
24
PR merge metrics
No merged PRs in 30d

Description

Say there are two classes:

```
class A a where
...

class A a => B a where
...
```

Assuming that the behaviour of `f` doesn't change, are any of these type changes permissible for a minor version bump?

1. Constraint relaxation

```diff
-f :: B a => a -> X
+f :: A a => a -> X
```

2. Removing a redundant constraint

```diff
-f :: (A a, B a) => a -> X
+f :: B a => a -> X
```

Contributor guide

Open the contributing guide

Research direction

Start by reading issue #65 and its existing discussion, then compare both proposed type-signature changes with the repository's Haskell Package Version Policy. Done means reaching a settled policy conclusion for each case and recording that clarification in the specification.

Written by the indexing model from the issue text.

Assessment

Tech stack
haskell
Domain
documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.