[ghc-steering-committee] #475: New tuple and list syntax, rec: accept
Richard Eisenberg
lists at richarde.dev
Tue Mar 1 19:45:36 UTC 2022
Between (2) and (3), I'm leaning toward (3). I'm not bothered by the loopiness, and it has the nice properties written in the proposal.
I have also come to lean against (1) at all. Maybe if there's a clamor for it, we can add it later, but I see it as unnecessary. Even if we could make it the primitive definition for tuples (and I bet we could, via data instances), its kind is quite complex and could be a real stumbling block for newcomers and experienced Haskellers alike. For something as fundamental as tuples, I would want to keep the basic definition quite simple.
Richard
> On Mar 1, 2022, at 10:10 AM, Joachim Breitner <mail at joachim-breitner.de> wrote:
>
> Hi,
>
> Am Montag, dem 28.02.2022 um 22:31 +0300 schrieb Vladislav Zavialov
> (int-index):
>> There’s also a new alternative described in the proposal. Here are our options:
>> 1. TupleN A B C
>> 2. Tuple [A, B, C]
>> 3. Tuple (A, B, C) — NEW
>
> I am not convinced it’s a good idea to introduce many ways of naming
> the same thing, and given that the above three are already in addition
> to the primitive (Tuple2 Bool Int), (which I’ll call (0) below), we
> need a good justification to have more than one.
>
> Between (2) and (3), I’d prefer (3): The strange loop of tuples
> referring to tuples isn’t too unhaskellish, and if it works better for
> unboxed tuples, then yay!
>
> Between (3) and (1) I am unsure. Presumably, if we didn’t have (3) we’d
> use the less idiosyncratic name `Tuple` for (1)?
>
> Are there other, not purely cosmetic, differences between (1) and (3)?
> Maybe related to partial application?
>
>
>
> It’s a bit sad we can't just have (1) without even needing (0), so that
> there really is only _one_ name that’s reasonably ergonomic. How far
> out would that be? Worth making Haskell good enough to support a nice
> design here? :-)
>
> Cheers,
> 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
More information about the ghc-steering-committee
mailing list