
As `f (\x -> x (\y -> y))`. FWIW, I actually think it strange that these constructs are allowed as an argument to an infix function but not a nonfix one. So it seems to me that it would be _removing_ a weird exception rather than adding one. Assuming we add `let`, `case`, and the other things that can also be an argument to an infix op, that is. (Why are they being excluded, by the way?)
On 6 Sep 2015, at 14:03, David Kraeutmann
wrote: It's not something that belongs in an extension. Rather, it should be in the main language.
Let's say you want to write f (\x -> x) (\y -> y) and forget the parentheses.
How would you parse the following under ArgumentBlock: f \x -> x \y -> y?
On Sun, Sep 6, 2015 at 2:45 PM, Tom Ellis
wrote: On Sun, Sep 06, 2015 at 12:34:55PM +0000, Oliver Charles wrote:
People saying "it just saves a character" seems to have completely missed my point and source code readability/refactoring options from a tool's perspective. It does more than save a character.
Let's look at it from the opposite direction. If "ArgumentBlock" were already the default then we could remove complexity from the grammar for the cost of a single character. That sounds like a great tradeoff to me, and is the reason I can't support ArgumentBlock.
Tom _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe