
The argument in favor of using some 'o' combinator works even better on my side of the debate. ;) I can coopt the suggestion of 'o' to say that you can use it for the few instances of IsString [Foo] that you want without having to say that the solution to this problem is to not fix it and make everyone pay this price. It is clear that other portions of the community found o"foo" an unacceptable tax for their EDSLs, so all you're saying is that this problem doesn't affect you. The web frameworks won't stop using OverloadedStrings, and I don't in general think they should have to. I'm not making a moral stance for changing it or not changing it, merely a pragmatic one. So we have 3 options. 1) make the change, 2) fix defaulting somehow to cover IsString 3) do nothing. Out of these I prefer option 2 to option 1, and find that option 3 doesn't lead to an acceptable outcome. Option 1 has knock-on effects and is less powerful than option 2 in that it would interact more poorly with the proposed Foldable/Traversable changes. All of that said, I am concerned that we'll now paralyze because of Ian's dangled option that we may be able to solve it with improved defaulting rules, as he has indicated a lack of desire to go implement that possible solution. Personally, and not speaking in any official capacity, I'd be willing to punt the issue out to say, something like 7.10 with the caveat that if by then we haven't resolved the defaulting solution by then we should implement this. That way we start the generalization of Foldable/Traversable in 7.9, and it gives us a year or so for someone to figure out if the defaulting solution can work, and the current proposal can serve as a fallback position. I don't know about Snoyman or Doug's stance on the urgency of the issue as it affects users far more in their spheres of influence than mine, so if they preferred to bull ahead I'd be apt to defer to them. -Edward On Mon, Aug 26, 2013 at 1:39 PM, Henning Thielemann < lemming@henning-thielemann.de> wrote:
On Mon, 26 Aug 2013, Henning Thielemann wrote:
This "opting in" already exists: Just put a space between o and the
quotation mark and define "o = fromString". It's Haskell 98.
I was wrong: You even don't need the space between o and ".