[ghc-steering-committee] Modern Scoped Type Variables #448: recommendation (mostly) accept
Joachim Breitner
mail at joachim-breitner.de
Tue Jun 7 09:46:31 UTC 2022
Hi,
it looks like there is a problem with the mailinglist and my email
provider, and I did not receive all emails. Luckily we have the archive
at
https://mail.haskell.org/pipermail/ghc-steering-committee/2022-June/date.html
and I noticed that Simon was nudging me personally to comment on #448.
> 2. The rest of the main proposal
> to have broad support, modulo some concerns about flags and forks. *Action:
> Tom, Joachim, Vlad, Eric, Chris, and Baldur*: please express an opinion.
> Can you do so this week please? You don't need to wait for (1); just
> ignore section 6-8.
I’m in favor of these things. They appear to be thought through, and
move Haskell in a direction I’m in favor of, while catering for
existing code.
I hope we don’t block our way too much for a future where
> It may be useful to write a variable occurrence to instantiate a
> universal argument
but I’ll accept that we’ll have to find syntax for that then, and that
the way we approached it in #126 wasn’t great, because it didn’t uphold
some of the principles we have identified since then.
I would not mind making -XTypeAbstractions and -XExtendedForAllScope
mutually exclusive, I think, but I guess the proposed heuristics which
one applies works as well, and maybe it is easier for people to migrate
if they can do it per-function, and not just per-module. So I’m ok with
this.
Also in favor of holding off @(..).
> 3. The proposal *also *makes a significant diff to the principles.rst
> document
> <https://github.com/goldfirere/ghc-proposals/blob/type-variables/principles.rst>,
> mostly expanding and clarifying points that were previously just a sentence
> or two. (Here's the old version
> <https://github.com/goldfirere/ghc-proposals/blob/principles/principles.rst>.)
> *Action: Tom, Joachim, Vlad, Eric, Chris, and Baldur*: please express an
> opinion.
Looks good to me. About the Contiguous Scoping Principle, the examples
involving patterns (do-notation for example) feel different (and less
bad) than the -XScopedTypeVariables example. Can’t really put my finger
on why. But since we state that the Contiguous Scoping Principle is not
a goal, merely something to be aware of, that’s fine
Cheers,
Joachim
--
Joachim Breitner
mail at joachim-breitner.de
http://www.joachim-breitner.de/
More information about the ghc-steering-committee
mailing list