If we're adding applicative brackets, it would be nice to have something like ⦇⦈ as options via UnicodeSyntax. When playing around with She, I found it much easier to read than the ASCII version, especially when I needed to combine them: (|(|a + b|) + (|c * d|)|) ⦇⦇a + b⦈ + ⦇c * d⦈⦈ Coincidentally, She is the perfect way to experiment with idiom brackets while thinking about a patch like this. I found it very illustrative just to go through old code and see what could really be improved and what couldn't. For me personally, I certainly found *some* code became more readable, but not quite as much as I expected. On Thu, Aug 15, 2013 at 10:44 AM, Anton Nikishaev <me@lelf.lu> wrote:
Simon Peyton-Jones <simonpj@microsoft.com> writes:
| Indeed, I wished the 0-ary case would be more alike to the unary | and binary case, cf. | | return f0 | f1 <$> a1 | f2 <$> a1 <*> a2 | | What is needed is a nice syntax for "idiom brackets".
Indeed. I'm quite open to adding idiom brackets to GHC, if everyone can agree on their syntax, and someone would like to offer a patch.
Something like (| f a1 a2 |) perhaps?
I can make a patch after people agree on everything.
There's also http://hackage.haskell.org/package/applicative-quoters with its template haskell nastiness
h> :m +Control.Applicative.QQ.Idiom h> :set -XQuasiQuotes h> [i| (,) "THX" "BYE" |]
[('T','B'),('T','Y'),('T','E'),('H','B'),('H','Y'),('H','E'),('X','B'),('X','Y'),('X','E')]
-- lelf
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe