[ghc-steering-committee] #626: Amendment of Visible Forall in Types, recommendation: Accept

Arnaud Spiwack arnaud.spiwack at tweag.io
Tue Jan 9 15:43:42 UTC 2024


Any other thoughts? If not, I'll consider this proposal accepted at the end
of this week.

On Tue, 2 Jan 2024 at 13:55, Richard Eisenberg <rae at richarde.dev> wrote:

> I support the amendment. I made one small suggestion, but I wish to vote
> for acceptance regardless of the status of this suggestion.
>
> Richard
>
> On Dec 22, 2023, at 9:20 AM, Arnaud Spiwack <arnaud.spiwack at tweag.io>
> wrote:
>
> I realised today that we haven't completed the vote on this. This is
> really a very simple proposal, let's not spend too long on this. I'll be on
> holiday for the next two weeks, I'm a bit embarrassed to send this email
> only now. But please opine soon. I'd like to be able to give an answer soon
> after I'm back (say on the 12th January)
>
> Best,
> Arnaud
>
> On Mon, 11 Dec 2023 at 11:06, Simon Peyton Jones <
> simon.peytonjones at gmail.com> wrote:
>
>> I recommend acceptance too.  It's all very fine detail.
>>
>> The actual diff seems quite large but that's because I encouraged Vlad to
>> take the opportunity to clarity the rather cryptic sentence in the original
>> #218, namely "The syntactic descriptions here applying to expressions apply
>> equally to patterns, though we will continue to discuss only expressions."
>> Instead it is all spelled out much more explicitly, which is way better.
>> Indeed spelling it out showed up a dark corner to do with view patterns,
>> hence the icky stuff Arnaud mentions.
>>
>> Simon
>>
>>    -
>>
>>
>> On Mon, 11 Dec 2023 at 09:56, Arnaud Spiwack <arnaud.spiwack at tweag.io>
>> wrote:
>>
>>> Dear all,
>>>
>>> Vlad is proposing to amend his own proposal
>>> https://github.com/ghc-proposals/ghc-proposals/pull/626
>>>
>>> Being an amendment, it's, as always, not as straightforward to consume,
>>> but Vlad gives us a good summary of the changes in his pull-request
>>> description.
>>>
>>> All in all, it's almost entirely straightforward clarification. There
>>> are two items of notice: patterns for visible forall arguments were
>>> specified as: only variable or wildcard. The amendment changes it to allow
>>> data constructors applied to (0 or more) patterns as well. The amended
>>> version is consistent with how patterns for invisible forall arguments are
>>> specified. The second, and this one is for Moritz, is a small change in the
>>> parsing of view patterns (it does break two packages at least on Hackage,
>>> but I actually don't quite understand how the change can affect semantics.
>>> It's that tiny. Vlad proposes 3 releases with warning before effecting the
>>> change).
>>>
>>> Maybe there's a third item: `p -> q` parses differently depending on
>>> whether ViewPattern or RequiredTypeArguments (or both) is turned on. This
>>> is kind of icky, I suppose. But in the case where both are on, then
>>> ViewPattern wins, so there's no real harm in it.
>>>
>>> Do pay some attention to the new items in the alternatives section.
>>>
>>> Anyway, I recommend we accept.
>>>
>>> --
>>> Arnaud Spiwack
>>> Director, Research at https://moduscreate.com and https://tweag.io.
>>> _______________________________________________
>>> ghc-steering-committee mailing list
>>> ghc-steering-committee at haskell.org
>>> https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>>>
>>
>
> --
> Arnaud Spiwack
> Director, Research at https://moduscreate.com and https://tweag.io.
> _______________________________________________
> ghc-steering-committee mailing list
> ghc-steering-committee at haskell.org
> https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
>
>
>

-- 
Arnaud Spiwack
Director, Research at https://moduscreate.com and https://tweag.io.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-steering-committee/attachments/20240109/f19bc375/attachment.html>


More information about the ghc-steering-committee mailing list