Three patches for cabal

Duncan Coutts duncan.coutts at
Mon Nov 9 07:31:34 EST 2009

On Fri, 2009-11-06 at 01:13 +0100, Niklas Broberg wrote:

> > Can someone please comment on these two proposed changes. I agree with
> > Niklas but I'm a bit reluctant to apply the patches without at least
> > some sign of agreement from someone else.
> >
> > Deprecating PatternSignatures seems uncontroversial, but the
> > NoMonoPatBinds is potentially controversial. GHC essentially uses
> > -XMonoPatBinds by default, even in H98 mode, and the user can use
> > -XNoMonoPatBinds to restore H98 behaviour. Niklas's and my point is that
> > the list of language extensions in Language.Haskell.Exceptions are
> > differences from H98 so it should be MonoPatBinds to get the difference
> > not NoMonoPatBinds to restore H98.
> >
> > In practise, since ghc uses MonoPatBinds by default it'd mean that
> > people who want to get back to H98 would need to use:
> >
> >  ghc-options: -XNoMonoPatBinds
> >
> > Because the extensions field is additive, not subtractive. Using the
> > name MonoPatBinds allows other compilers to implement it without it
> > having to be the default.
> I had a look at the source for cabal HEAD and was surprised to see
> that this stuff had fallen by the wayside. What's holding it up? I
> can't imagine that anyone would be against the deprecation of
> PatternSignatures at least.

I'd forgotten they were separate patches. I've applied the
PatternSignatures one since that is indeed uncontroversial.

I don't think the discussion on the other ones were conclusive yet.

I think in the end I'm with Ian on his suggestion that we should allow
the "No" prefix to invert an extension. This would help in this case and
also let us handle things better when the default extensions change.


More information about the Libraries mailing list