I agree, we should wait for the CLC before voting on this proposal.
To summarize:
10 years ago, the CLC voted on the "Monad of No Return" proposal, which removes `return` and `(>>)` from `Monad`, to be replaced by `pure` and `(*>)` from `Applicative`, with `return` and `(>>)` being replaced with top-level bindings. The implementation of this was to proceed in multiple phases:
+ Phase 1 (implemented in 8.2, default in 9.2) that warns when `return` and `(>>)` are overwritten with non-canonical implementations (something other than `pure` and `(*>)`)
+ Phase 2: `return` and `(>>)` become top-level bindings and GHC ignores canonical implementation of these
+ Phase 3: Warn about all `return` and `(>>)` overwrites
+ Phase 4: Disallow overwrites of `return` and `(>>)`, removing them from Monad.
This proposal proposes merging these into 2 phases:
+ Phase 2: Make non-canonical implementations of `(>>)` and `return` a compilation error, and add a warning for canonical ones
+ Phase 3: Move `return` and `(>>)` to the top-level and remove them from Monad.
I'm in favor of *this specific change*, i.e. reducing the phases and easing migration.
However, there are multiple concerns raised with the original MoNR proposal, as compiled by Julian:
+ `(*>)` is not as performant as `(>>)` in some cases, which affects a large portion of the ecosystem, as this is an "unseen default".
+ The impact assessment is stale, and the original motivation outdated
+ There are some corner cases that mean that behavior might potentially change, which is worrying
So there's a question of whether we should keep going with the "Monad of No Return" proposal at all (of which this proposal is a modification), and if so, in what form we should do so.
As Simon points out, the CLC is discussing this, and I agree that the time is not right for a vote at the moment. We should think about the original proposal, and I encourage you to weigh in on the [CLC discussion](
https://github.com/haskell/core-libraries-committee/issues/325) (it's "internal", but multiple observers have already chimed in)
Unless anyone disagrees in the next 2 days (i.e. by Monday), I will inform the authors of this proposal of this, and suggest that we move the proposal back to "under revision" until we've gotten feedback from the CLC.