On Wed, 2007-08-15 at 11:06 -0700, Stefan O'Rear wrote: > > Why not just: > > > > sumTo0 = foldr (\0 k -> 0 > > n k -> n + k) 0 > > Because it would break a very large amount of old code, and I think H' > was supposed to be upward compatible:
Aye, that'd be bad. > foo = getSomethingCPS $ \ arg -> > moreStuff > > is now a syntax error (\ { varid -> } matches no productions). I'm not sure I follow. The patterns would have to match up in a column, so foo = getSomethingCPS $ \ arg -> moreStuff should be fine, to add another alternative it'd have to be: foo = getSomethingCPS $ \ Pat1 -> moreStuff Pat2 -> evenMoreStuff This case might be tricky though: foo = getSomethingCPS $ \ Pat1 -> foo moreStuff since we have to parse all of the moreStuff expression before discovering it has no following "->" and so it's party of the body of the first lambda alternative rather than a pattern starting a new alternative. I'm no parsing expert (especially when it comes to layout rules), perhaps this is all too tricky. Duncan _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe