Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-06-04 Thread Wolfgang Jeltsch
Am Montag, 28. April 2008 06:29 schrieben Sie: 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

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-28 Thread Simon Marlow
Manuel M T Chakravarty wrote: Lennart Augustsson: 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'. :(

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-28 Thread Johan Tibell
On Mon, Apr 28, 2008 at 6:56 PM, Simon Marlow [EMAIL PROTECTED] wrote: So I suggest we reject the proposal, and move any further discussion to haskell-cafe. Ok? Sounds good to me. ___ Haskell-prime mailing list Haskell-prime@haskell.org

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-27 Thread Manuel M T Chakravarty
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

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread 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

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Adam Sampson
Simon Marlow [EMAIL PROTECTED] writes: * add Make $ left associative, like application I'm an end user of Haskell rather than an FP researcher, and I'm very strongly against this change because I don't think of $ as being function application; I think of it as the brackets from here to the

RE: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Sittampalam, Ganesh
Manuel Chakravarty wrote: Care for legacy code is important, but H' will have to break backwards compatibility in some places. And especially where you already rely on GHC extensions, you can't really expect that H' will adopt features that have been available as GHC extensions in

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Steven Hazel
On Wed, Apr 23, 2008 at 8:13 PM, Manuel M T Chakravarty [EMAIL PROTECTED] 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

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Wolfgang Jeltsch
Am Mittwoch, 23. April 2008 01:20 schrieb Duncan Coutts: […] Surely there was a justification to having $ be the opposite associativity from application and not just a different precedence. Does anyone know what it was? Probably the fact that you can write f $ g $ h $ u $ v $ w $ x

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Wolfgang Jeltsch
Am Mittwoch, 23. April 2008 09:58 schrieb Bulat Ziganshin: […] my main point is that considering space-less operators as having larger priority is our natural habit. Really??? I‘ve never heard of people using spaceless operators for stating precedence before. And it contradicts nice

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Wolfgang Jeltsch
Am Mittwoch, 23. April 2008 10:06 schrieb Cale Gibbard: […] I believe that migrating code will be quite a task regardless of the outcome here, but at least for the packages that are in Hackage, the system helpfully reports build failures, so we'll know where the breakages are, and roughly

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Wolfgang Jeltsch
Am Donnerstag, 24. April 2008 00:43 schrieb Ian Lynagh: […] Please see http://www.haskell.org/haskellwiki/Library_submissions f $$ x = f x Note that this clashes with Text.PrettyPrint I also doesn’t correspond to $!. We should introduce $$! then. […] Best wishes, Wolfgang

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Wolfgang Jeltsch
Am Donnerstag, 24. April 2008 09:30 schrieb Lennart Augustsson: Haskell has now reached the point where backwards compatibility is something that must be taken very seriously. Would you be opposed to a Haskell 2 which would break lots of things? […] Best wishes, Wolfgang

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread John Meacham
On Thu, Apr 24, 2008 at 09:38:22PM +0200, Wolfgang Jeltsch wrote: Am Donnerstag, 24. April 2008 00:43 schrieb Ian Lynagh: […] Please see http://www.haskell.org/haskellwiki/Library_submissions f $$ x = f x Note that this clashes with Text.PrettyPrint I also doesn’t correspond

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Johan Tibell
On Thu, Apr 24, 2008 at 3:41 PM, Wolfgang Jeltsch [EMAIL PROTECTED] wrote: Am Donnerstag, 24. April 2008 09:30 schrieb Lennart Augustsson: Haskell has now reached the point where backwards compatibility is something that must be taken very seriously. Would you be opposed to a Haskell 2

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread Lennart Augustsson
Haskell 2 (whatever it is), does not have the goals that were stated for Haskell', so I can accept disruptive changes. Haskell' has (had?) some very clear goals, and breaking every existing program was not one of them. On Thu, Apr 24, 2008 at 8:41 PM, Wolfgang Jeltsch [EMAIL PROTECTED] wrote:

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-24 Thread David Menendez
On Wed, Apr 23, 2008 at 6:21 PM, Niklas Broberg [EMAIL PROTECTED] wrote: I'm very suspicious about the power/weight ratio of this change. Normally, for simple value-level stuff like this, provide both options: mapM / forM. = = So how about, rather than break things, just

RE: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Sittampalam, Ganesh
but it also seems not to make much sense to standardise a Prelude which people strongly want to change. I'm strongly against this change, both on its own merits - in most cases when there is a real argument being passed, I find chains of $s easier to think about than your alternative - but

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Cale Gibbard
2008/4/23 Sittampalam, Ganesh [EMAIL PROTECTED]: but it also seems not to make much sense to standardise a Prelude which people strongly want to change. I'm strongly against this change, both on its own merits - in most cases when there is a real argument being passed, I find chains of

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Neil Mitchell
Hi How would you propose supporting multiple preludes at once? Unhappy. The Haskell Prelude is more than just a standard library. Things like $, ., otherwise, = etc would be keywords in any other language. As such, you expect their meaning to be consistent. If you let other people define

RE: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Sittampalam, Ganesh
I believe that migrating code will be quite a task regardless of the outcome here, NonDecreasing indentation and the removal of n+k patterns are the only accepted proposals I can see that might affect existing code. The former is already standard practice and the latter is unlikely to be that

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Dan Doel
On Wednesday 23 April 2008, Bulat Ziganshin wrote: Hello Dan, Wednesday, April 23, 2008, 1:42:20 PM, you wrote: This wouldn't work, you'd have to rewrite it as: withSomeResource foo . withSomeOtherThing bar . yetAnotherBlockStructured thing $ ... it is very

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread apfelmus
Dan Doel wrote: 3) Left associative ($) is consistent with left associative ($!). (f $! x) y z ((f $! x) $! y) $! z Left associative, these are: f $! x $ y $ z f $! x $! y $! z Nice! Subconsciously, the fact that ($!) is currently not left associative has always bitten me.

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Cale Gibbard
2008/4/23 apfelmus [EMAIL PROTECTED]: Dan Doel wrote: Note that setting (.) or ($) = fmap subsumes function application, because we have fmap :: (a - b) - a - b for the /identity functor/. In other words, the current ($) and (.) are just special cases of the general fmap .

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Simon Marlow
Dan Doel wrote: On Tuesday 22 April 2008, Simon Marlow wrote: I'm hoping someone will supply some. There seemed to be strong opinion on #haskell that this change should be made, but it might just have been a very vocal minority. These are the arguments off the top of my head: Thanks, I've

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Simon Marlow
Duncan Coutts wrote: On Tue, 2008-04-22 at 21:02 -0400, Dan Doel wrote: 3) Left associative ($) is consistent with left associative ($!). The right associative version of the latter is inconvenient, because it only allows things to be (easily) strictly applied to the last argument of a

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Niklas Broberg
When I first saw this thread, my gut response was Aw gawds no, don't touch my $ !! I love $, I use it all the time, it really helps making code more readable and more nicely structured. I would really hate for someone to take that away from me. So when I came across this: This wouldn't work,

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Aaron Denney
On 2008-04-23, Sittampalam, Ganesh [EMAIL PROTECTED] wrote: There's plenty of code out there that doesn't have the benefit of a vigilant user community ready to spring into action. For example, Credit Suisse has several tens of thousands of lines of code written by internal users who are not

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Dan Doel
On Wednesday 23 April 2008, Bulat Ziganshin wrote: it's not refactoring! it's just adding more features - exception handler, progress indicator, memory pool and so on. actually, code blocks used as a sort of RAII for Haskell. are you wanna change all those ';' when you add new variable to your

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Neil Mitchell
Hi I think it is reasonable to look closely at the motivations for wanting to retain the $ as is. Looking through this thread, I can find only a single complaint raised (albeit an important one), namely backwards compatibility. Yes, such a change would likely break quite a few my

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Cale Gibbard
2008/4/23 Neil Mitchell [EMAIL PROTECTED]: We also should remember that a large number of academic papers are written in Haskell, and unlike libraries, don't get update releases made. This is not a minor tweak - it will break a massive number of programs. How many research papers have you

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Don Stewart
ndmitchell: Hi I think it is reasonable to look closely at the motivations for wanting to retain the $ as is. Looking through this thread, I can find only a single complaint raised (albeit an important one), namely backwards compatibility. Yes, such a change would likely break quite

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Niklas Broberg
I'm very suspicious about the power/weight ratio of this change. Normally, for simple value-level stuff like this, provide both options: mapM / forM. = = So how about, rather than break things, just provide an alternative to ($). Alright, I'm not sure what the proper channel for doing

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Sterling Clover
I think there are some very valid concerns about this proposal, but just to add a small datapoint -- the associativity of $ was somewhat painful and counterintuitive to me when I was first learning Haskell, and the associativity of $! doubly so. Code breakage issues aside, this seems very

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Ian Lynagh
On Thu, Apr 24, 2008 at 12:21:26AM +0200, Niklas Broberg wrote: I'm very suspicious about the power/weight ratio of this change. Normally, for simple value-level stuff like this, provide both options: mapM / forM. = = So how about, rather than break things, just provide an

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Jason McCarty
Niklas Broberg wrote: ... It should be said though that changing the associativity of $ doesn't make all code nice and clean. Consider for instance f (g (h x)) (k y) We could change that into one of f $ g (h x) $ k y f (g $ h x) $ k y If $ is left-associative, then f (g (h x)) (k

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread John Meacham
On Wed, Apr 23, 2008 at 09:52:11AM -0700, Simon Marlow wrote: The problem with this is that f !x y would associate differently in an expression than it does on the left hand side of an equation, where ! is the prefix bang-pattern operator. To make this consistent we'd have to make ! a

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Dan Weston
John Meacham wrote: On Wed, Apr 23, 2008 at 09:52:11AM -0700, Simon Marlow wrote: The problem with this is that f !x y would associate differently in an expression than it does on the left hand side of an equation, where ! is the prefix bang-pattern operator. To make this consistent we'd

RE: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Sittampalam, Ganesh
Aaron Denney wrote: On 2008-04-23, Sittampalam, Ganesh [EMAIL PROTECTED] wrote: There's plenty of code out there that doesn't have the benefit of a vigilant user community ready to spring into action. For example, Credit Suisse has several tens of thousands of lines of code written by

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Chris Smith
On Thu, 24 Apr 2008 01:43:36 +0100, Sittampalam, Ganesh wrote: Is there not a general expectation when a new language standard comes out that people will migrate to it (perhaps over time)? I would hope so. There's no chance that Haskell 98 would continue to be maintained with bug fixes and

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Manuel M T Chakravarty
Lennart Augustsson: I my opinion, anyone who suggest changing the associativity of $ is insane. Or just hating every Haskell user. Changing $ would make virtually every Haskell program uncompilable. Just pick some other (Unicode?) operator, but leave $ alone. I agree that the

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-23 Thread Manuel M T Chakravarty
Sittampalam, Ganesh: Aaron Denney wrote: On 2008-04-23, Sittampalam, Ganesh [EMAIL PROTECTED] wrote: There's plenty of code out there that doesn't have the benefit of a vigilant user community ready to spring into action. For example, Credit Suisse has several tens of thousands of lines of

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-22 Thread Don Stewart
marlowsd: Chris Smith wrote: On Tue, 22 Apr 2008 15:53:39 -0700, Simon Marlow wrote: Tue Apr 22 15:53:31 PDT 2008 Simon Marlow [EMAIL PROTECTED] * add Make $ left associative, like application Is there a justification for this somewhere? I'm hoping someone will supply some. There

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-22 Thread Simon Marlow
Chris Smith wrote: On Tue, 22 Apr 2008 15:53:39 -0700, Simon Marlow wrote: Tue Apr 22 15:53:31 PDT 2008 Simon Marlow [EMAIL PROTECTED] * add Make $ left associative, like application Is there a justification for this somewhere? I'm hoping someone will supply some. There seemed to be

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-22 Thread Dan Doel
On Tuesday 22 April 2008, Simon Marlow wrote: I'm hoping someone will supply some. There seemed to be strong opinion on #haskell that this change should be made, but it might just have been a very vocal minority. These are the arguments off the top of my head: 1) Anything of the form: f

Re: patch applied (haskell-prime-status): add Make $ left associative, like application

2008-04-22 Thread Aaron Denney
On 2008-04-22, Simon Marlow [EMAIL PROTECTED] wrote: Chris Smith wrote: I know it would break nearly every single piece of Haskell code I've ever written. As such, I'm biased toward thinking it's an extremely bad idea. Absolutely. Given that, we'd need a *very* good reason to make the