Re: patch applied (haskell-prime-status): add ""Make $ left associative, like application"
Lennart Augustsson: Haskell has now reached the point where backwards compatibility is something that must be taken very seriously. The motivation behind Haskell' was to bring the most common extensions into the standard, it was all going to be done in a year. Haskell' is not a new language, but growing Haskell98 with common extension. If there's something in Haskell' that will require a change every 1000 lines, then I think it's acceptable. If there's something in Haskell' that will require changing every other line, then it's not acceptable. The existing Haskell codes bases are simply too big. I completely agree. So I still think changing $ is insane. Why change? If you want a new operator, make a new one. Don't make a gratuitous change that will waste countless man hours. For me it's a simple decision, if $ changes I cannot use Haskell'. :( Given that people can't even agree whether it makes sense to change $ at all, this is IMHO far away from a change that justifies breaking any code. Manuel ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: patch applied (haskell-prime-status): add ""Make $ left associative, like application"
Wolfgang Jeltsch: Am Donnerstag, 24. April 2008 05:13 schrieb Manuel M T Chakravarty: […] Hence, anything that is *important* to change, we should change now. Although I can follow your arguments, I thought that the large and disruptive changes should be done for Haskell 2. Depends what you mean by Haskell 2. If it is an experimental language that shares some superficial similarities with Haskell, sure we may have Haskell 2. If you mean a serious successor of Haskell with the expectation that many/most Haskell users will eventually move to Haskell 2, then no. Haskell has been gaining a lot of momentum recently. That's good and bad, but surely makes it hard to change the trajectory. (This is, of course, just my personal opinion.) If they should really be done now, we should also fix a lot of other things. For example, the Num hierarchy, the Functor/Applicative/Monad hierarchy, the fact that there exist Alternative and MonadPlus although we have Monoid, the fact that we cannot have contexts like (forall a. Monoid (m a)) which is the source for the last problem, the fact that we don’t have class aliases, ugly names like fmap and mappend, etc. As Lennart and Ganesh have argued, the amount of breaking changes that we we will be able to fit in without causing serious problems is limited. Manuel ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: patch applied (haskell-prime-status): add ""Make $ left associative, like application"
Sittampalam, Ganesh: Manuel Chakravarty wrote: We should be careful about where we break existing code, and we should try to support automatic translation of H98 to H' code, but any changes that we do not make now will become even more difficult in the future when there is even more Haskell code. Look at what is happening now already, industrial users applying pressure on the committee to not change the language too much for the sake of legacy code. A clear indication that anything we don't change now, we will have to live with forever. I wasn't arguing for special treatment as an "industrial" user, just listing one datapoint that I have to counter any impression that the only or main cost to the community as a whole is fixing what's on hackage. I agree with that. However, maybe somewhat paradoxically, I think, given the resistance that changes to the language already invoke now, we should actually be fairly aggressive with changes this one time (ie, in Haskell'). Hence, anything that is *important* to change, we should change now. Agreed. It's just in this case the pain of changing will be huge and the benefits marginal at best. Yes, I was not arguing for that particular change, my comment was of a general nature. We should mitigate the pain by having a H98 to H' translator Such a translator would have to maintain existing layout etc, and produce reasonably nice looking code in places where it makes changes. Do we have any infrastructure that would make writing one easy? For H98, simple[1] changes might be possible with haskell-src if it would be modified to be able to preserve comments and layout. Manuel [1] For example, purely syntactic ones. ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime