[Haskell-cafe] Another point-free question (>>=, join, ap)
Edsko de Vries
devriese at cs.tcd.ie
Thu Feb 12 18:36:19 EST 2009
Hi,
I can desugar
do x' <- x
f x'
as
x >>= \x -> f x'
which is clearly the same as
x >>= f
However, now consider
do x' <- x
y' <- y
f x' y'
desugared, this is
x >>= \x -> y >>= \y' -> f x' y'
I can simplify the second half to
x >>= \x -> y >>= f x'
but now we are stuck. I feel it should be possible to write something like
x ... y ... f
or perhaps
f ... x ... y
the best I could come up with was
join $ return f `ap` x `ap` y
which is not terrible but quite as easy as I feel this should be. Any hints?
Edsko
More information about the Haskell-Cafe
mailing list