Lennart Augustsson | 1 Oct 07:48 2011
Picon

Re: left and right sections extended

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)
(Continue reading)


Gmane