
In the Is currying monadic?http://greenokapi.net/blog/2009/05/07/is-currying-monadic/post the author says: This is again a nested expression. So I wondered if you could again
"flatten" it with a monadic do block:
let add3 = do a <- get first parameter b <- get second parameter c <- get third parameter
return a+b+c
OK, so I "know" that functions in Haskell (which uses currying for functions as a general rule) are the "Reader monad". But I don't understand it well enough to know if that means you can use Reader to implement the above...
(I don't understand Reader at all in fact. I must bang my head against it again, but I find it very confusing - how the monad is represented, what the functions are, and how they get magically applied.)
Any idea what he is talking about? Thanks Daryoush