
On Sun, Nov 29, 2020 at 12:40 PM Simon Marlow
On Wed, 25 Nov 2020 at 11:21, Spiwack, Arnaud
wrote: PostfixOperators: maybe
I'd like to make a case for this extension, on the grounds that it's a complete no-brainer.
The name "PostfixOperators" makes it sound a lot more scary than it actually is. In fact it's just a tiny generalisation to the definition of left sections. You could almost regard it as a typo in the Haskell report - if it had been noticed that this rule was unnecessarily restrictive, I'm fairly sure it would have been fixed at the time.
https://downloads.haskell.org/ghc/latest/docs/html/users_guide/glasgow_exts....
It took me several readings to understand what this extension does, to be
honest. I agree now, I'll change my vote.
On Sun, Nov 29, 2020 at 9:14 PM Alejandro Serrano Mena
El dom, 29 nov 2020 a las 12:12, Simon Marlow (
) escribió: On Wed, 25 Nov 2020 at 11:21, Spiwack, Arnaud
wrote: ## OverloadedX
These extensions can confuse type inference, yielding ambiguous type variables message. And as much as I like them, I don't think it's safe to include them yet. Not until we have a reasonable story for defaulting literals.
OverloadedLabels: no OverloadedLists: no OverloadedStrings: no
For what it's worth, I've been writing code with OverloadedStrings for several years now and in my experience it rarely causes a problem, even for beginners. The context almost always provides enough information to resolve the ambiguity. (admittedly I'm slightly surprised by this too, but experience has convinced me)
I don't have much experience with OverloadedLists, but I'd be prepared to believe that it's a similar story there too.
Adding to this, I think that both OverloadedStrings and OverloadedLists go very well with the idea of overloaded literals story that Haskell already has for numbers.
On principle, I very much agree. In fact I almost always turn both OverloadedStrings and OverloadedList on. But it also almost always causes some type errors when I turn them on (well, ambiguity errors). Therefore, I'm a bit dubious at the idea of making them the default. Even though Alejandro's point is undeniable.