## 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.
OverloadedLabels is really a new syntactic form and doesn't fall into the same category as the other two here.
Cheers
Simon