
How do you deprecate an instance?
On Sun, Nov 24, 2019, 12:18 PM Dan Burton
If someone depends on this behavior, we should give them the courtesy of a proper deprecation cycle to aid them in fixing their code. That's what a deprecation cycle is for. Don't skip it.
-- Dan Burton
On Sun, Nov 24, 2019 at 7:57 AM Oleg Grenrus
wrote: I cannot see any justification for that instance
-- | @since 4.11.0.0 instance Fail.MonadFail (ST s) where fail s = errorWithoutStackTrace s
If someone wants to fail pattern matches in `ST s`, please do that explicitly.
I suggest and propose the removal without any deprecation period. If someone depends on this behavior, they ought to fix they code immediately: it's straight forward compiler type-error driven refactoring.
Note: compatibility package
https://hackage.haskell.org/package/fail-4.9.0.0/docs/Control-Monad-Fail.htm... doesn't have that instance, so I suspect not-that many use(d) that instance.
Discussion period: 2 weeks (until Monday 2019-12-09).
- Oleg
P.S. you might run into problems with https://gitlab.haskell.org/ghc/ghc/issues/15681 bug/miss-feature, but there's always a workaround to write code using explicit matching combinator, so it's not a show stopper.
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
_______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries