left and right sections extended
Lennart Augustsson
lennart at augustsson.net
Sat Oct 1 07:48:48 CEST 2011
I'm not convinced there are enough use cases to warrant the extra complexity.
-- Lennart (iPhone)
On Sep 30, 2011, at 14:21, Christian Maeder <Christian.Maeder at dfki.de> wrote:
> Hi,
>
> the following sections are currently legal in Haskell:
>
> (a + b +) and (++ a ++ b)
>
> because + is left and ++ is right associative.
>
> I would like to write
>
> (+ 1 +) and (++ " " ++)
>
> as legal generalized sections, too, to stay for (\ a -> (a + 1 +)) and (\ a b -> a ++ " " ++ b) respectively.
>
> The right-associative case would be "flip (\ b -> (++ " " ++ b))"
>
> Such an extension would be easy to implement and it would also be a generalization of putting parenthesis around symbols as in (+) or (++).
>
> Extending the grammar is easy:
>
> aexp -> ...
> | ( infixexp qop ) (left section)
> | ( qop⟨-⟩ infixexp ) (right section)
>
> Some thoughts are needed to exclude the illegal cases (as done for left and right sections).
>
> Is this worth a formal proposal or is this too confusing?
>
> Cheers Christian
>
> _______________________________________________
> Haskell-prime mailing list
> Haskell-prime at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-prime
More information about the Haskell-prime
mailing list