[ghc-steering-committee] Proposal #608, -XPatternSignatureBinds. Rec: accept

Joachim Breitner mail at joachim-breitner.de
Mon Jan 29 11:15:31 UTC 2024


Hi,

Am Montag, dem 29.01.2024 um 11:03 +0000 schrieb Simon Marlow:
> I might be a bit confused, but doesn't this proposal change the meaning of an existing
> extension (PatternSignatures)?

a long-ago deprecated one:

~ $ ghci
GHCi, version 9.4.8: https://www.haskell.org/ghc/  :? for help
ghci> :set -XPatternSignatures

<no location info>: warning: [-Wdeprecated-flags]
    -XPatternSignatures is deprecated: use -XScopedTypeVariables or pragma {-# LANGUAGE ScopedTypeVariables #-} instead

Hopefully our stability principles does not require us to heed programs
that ignored deprecation flags for a while?

My understanding of
https://github.com/ghc-proposals/ghc-proposals/blob/wip/general-rules/principles.rst#3ghc-stability-principles
is that, despite “stable package” not saying “does not use features
deprecated long ago”, it’s still ok to break such programs, as this is
our mechanism GR3?


Of course we could side-step this procedural question about repurposing
an old extension and introduce `SimplePatternSignatures` instead. Not
in favor, simply because as a user I more than once intuitively reached
for `PatternSignatures` to get the proposed behavior.

Cheers,
Joachim


-- 
Joachim Breitner
  mail at joachim-breitner.de
  http://www.joachim-breitner.de/



More information about the ghc-steering-committee mailing list