I'm still not convinced about the fact that there are two extensions for this. Which seems more motivated by technical details of the implementation, rather than by semantics. But it is not a hill that I'm willing to die on… so if I'm alone in this, I'm not going to argue further.

/Arnaud

On Mon, Jan 20, 2020 at 4:46 PM Simon Peyton Jones via ghc-steering-committee <ghc-steering-committee@haskell.org> wrote:

I support it.


Simon

 

From: ghc-steering-committee <ghc-steering-committee-bounces@haskell.org> On Behalf Of Simon Marlow
Sent: 20 January 2020 08:37
To: Sandy Maguire <sandy@sandymaguire.me>
Cc: ghc-steering-committee@haskell.org; Joachim Breitner <mail@joachim-breitner.de>
Subject: Re: [ghc-steering-committee] #285: -XNoImplicitForAll, recommendation: accept

 

Dear committee:

 

Proposal #285 is currently under consideration: https://github.com/ghc-proposals/ghc-proposals/pull/285

 

I previously recommended acceptance, and there was some followup discussion on the GitHub thread where Simon PJ and Arnaud requested changes. The changes, namely clarifications and more examples, have all been implemented and those that requested changes have signed off.

 

I think we can accept the proposal now. Any final concerns?

 

Cheers

Simon

 

 

On Wed, 13 Nov 2019 at 01:18, Sandy Maguire <sandy@sandymaguire.me> wrote:

I'm largely in agreement with Arnaud here.

 

On Wed, Nov 13, 2019 at 1:59 AM Spiwack, Arnaud <arnaud.spiwack@tweag.io> wrote:

I've left comments on the Github thread.

 

I'm rather sympathetic to this idea. I personally think that the implicit binding rules that we have in place are a bit messy, so simply turning them off may be of help.

 

My Github comments raise two points:

 

- The proposal is a tad challenging to read, and I'd like some improvements before acceptance be considered

- I'm questioning whether we really want two extensions for these two very related behaviours

 

On Mon, Nov 11, 2019 at 10:44 AM Simon Marlow <marlowsd@gmail.com> wrote:

Proposal #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@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@joachim-breitner.de
  http://www.joachim-breitner.de/

_______________________________________________
ghc-steering-committee mailing list
ghc-steering-committee@haskell.org
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee

_______________________________________________
ghc-steering-committee mailing list
ghc-steering-committee@haskell.org
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee

_______________________________________________
ghc-steering-committee mailing list
ghc-steering-committee@haskell.org
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee



--

I'm currently travelling the world, sleeping on people's couches and doing full-time collaboration on Haskell projects. If this seems interesting to you, please consider signing up as a host! https://isovector.github.io/erdos/

_______________________________________________
ghc-steering-committee mailing list
ghc-steering-committee@haskell.org
https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee