
Hi Alexander,
This is "exactly" the applicative style, where idiom brackets come from.
I disagree. Layout has at least two advantages over applicative here: 1) Applicative costs (at least) three additional characters per function parameter. 2) You can not have arbitrary infix operators in the parameters when using applicative. Also your example is not really equivalent to f (x a) (y b) (z c) is it?
Idiom brackets abstract the <$> (fmap) and (<*>) operators away.
But from what I can tell it also reintroduces the parenthesis? How would you
write f (x a) (y b) in idiom brackets?
/J
On 25 May 2011 22:06, Alexander Solla
2011/5/25 Jonas Almström Duregård
I don't see the similarity (from reading this: http://www.haskell.org/haskellwiki/Idiom_brackets). My suggestion is just a way of using layout to avoid parenthesis.
This is "exactly" the applicative style, where idiom brackets come from. Use Control.Applicative: f <$> x a <*> y b <*> z c You can use the identity functor to recover "plain old" function application. Idiom brackets abstract the <$> (fmap) and (<*>) operators away. And yes, you are right that applicative style is very useful.