Three patches for cabal

Ian Lynagh igloo at
Fri Jun 19 16:05:32 EDT 2009

On Wed, Jun 17, 2009 at 10:24:48AM +0100, Duncan Coutts wrote:
> 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

I think that Cabal should allow any extension to be listed as either Foo
or NoFoo, just as GHC does in a -X flag or a LANGUAGE pragma.

This will also be useful if we get extension groups like Haskell'2009
and Haskell'2010, where you might want to say something like:
    Haskell'2010 minus ExistentialQuantification


More information about the Libraries mailing list