Argh. Of the people who responded, 2 voted for % and 2 voted for ^. No one has voted to reject the proposal.
I thus declare the proposal accepted. But with what syntax? I have no conflict with a particular choice of glyph, so I will cast the tie-breaking vote for %. Rationale: ^1 is easy to believe as an exponentiation operator, whereas % has no tradition (within Haskell) as being used as a numerical infix operator.
The acceptance of the proposal gets the gears unblocked. If anyone feels this decision premature (or otherwise wrong), please do bleat, as we still have time to change the choice of glyph.
Happy Friday,
Richard
How annoying, how can I now say “I’m trusting the shepherd’s
judgement” … ;-)
I guess in that case I’ll say I’m trusting Simon PJ, and will go with
his vote, as I have no strong opinion of my own.
Cheers,
Joachim
Am Sonntag, den 13.09.2020, 22:12 +0000 schrieb Richard Eisenberg:
> Hi committee,
>
> Mathieu Boespflug has proposed a new syntax for linear arrows: https://github.com/ghc-proposals/ghc-proposals/pull/356
>
> Currently (from the original linear types proposal), we have #-> to denote a linear function, and # m -> to denote an arbitrary function whose argument has multiplicity m. This proposal suggests three changes:
>
> 1. Drop #-> entirely.
> 2. Use ^ instead of # in the second form, but require that it be a *prefix* usage of ^ (that is, the character after the ^ must not be whitespace).
> 3. Introduce a new lexeme ^1 that is used to denote linear functions.
> Alternative: use % in place of ^; % is observed to be more visually apparent in some fonts than ^.
>
> In time, the hope is that rule (3) will no longer be needed, if we gain overloaded numbers at the type level (when 1 :: Multiplicity will type-check without a special rule).
>
> Motivations for this change come from the experience within Tweag of using linear types. The change away from # also is to avoid a conflict with overloaded labels, once those are allowed in types.
>
> The hope is that we can make a decision about this in time for release with GHC 9.0. This proposal is already implemented: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/4020
>
> In conflict with our usual protocol, I will not make a recommendation on this proposal, as I am conflicted with the proposer. However, I do hope that we can come to a conclusion on this quickly, to avoid making a backward-incompatible change after a release.
>
> We have four options:
> A. Keep the syntax as it is.
> B. Choose to go with ^
> C. Choose to go with %
> D. Choose to go with some other symbol. I don't think there is any particular preference for any one symbol over another.
>
> Richard
> _______________________________________________
> ghc-steering-committee mailing list
> ghc-steering-committee@haskell.org
> https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
--
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.orghttps://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-steering-committee
_______________________________________________