[ghc-steering-committee] #285: -XNoImplicitForAll, recommendation: accept

Simon Marlow marlowsd at gmail.com
Mon Nov 11 09:44:02 UTC 2019


Proposal #285:

https://github.com/ghc-proposals/ghc-proposals/pull/285

suggests two new LANGUAGE pragmas -XNoImplicitForall and
-XNoPatternSignatureBinds.

They have the effect of making a subset of existing programs illegal, and
in that sense I don't think these are problematic. The intention is that
these would be used with ExplicitForalls to enforce that all identifiers
have explicit binding sites. I'm generally supportive of that.

However I think we should be wary of the potential future direction,
mentioned in the proposal:

> As described in the motivation, this opens the door to other means to
bind the previously implicitly bound variables.

i.e. an unbound name in a type could refer to a type variable bound in an
enclosing scope. This would be a language *change*, not merely an addition
or subtraction, and hence potentially fork-like. So we would want to
consider very carefully whether that's the direction we want to take the
language.

But since that isn't part of the current proposal, and the current proposal
is merely an optional subtraction, I don't think it's controversial.

Cheers
Simon

On Thu, 7 Nov 2019 at 09:29, Joachim Breitner <mail at joachim-breitner.de>
wrote:

> Dear Committee,
>
> this is your secretary speaking:
>
> -XNoImplicitForAll
> has been proposed by John Ericson
> https://github.com/ghc-proposals/ghc-proposals/pull/285
>
> https://github.com/Ericson2314/ghc-proposals/blob/no-implicit-forall/proposals/0000-no-implicit-forall.rst
>
> I propose Simon Marlow as the shepherd.
>
> Please reach consensus as described in
> https://github.com/ghc-proposals/ghc-proposals#committee-process
> I suggest you make a recommendation, in a new e-mail thread with the
> proposal number in the subject, about the decision, maybe point out
> debatable points, and assume that anyone who stays quiet agrees with
> you.
>
> Thanks,
> Joachim
> --
> Joachim Breitner
>   mail at joachim-breitner.de
>   http://www.joachim-breitner.de/
>
> _______________________________________________
> ghc-steering-committee mailing list
> ghc-steering-committee at haskell.org
> https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-steering-committee/attachments/20191111/083d6815/attachment.html>


More information about the ghc-steering-committee mailing list