What is a monad?

Its a concept that was invented in mathematics  in the 1960s, and it was rediscovered in computer science in the 1990s

In functional programming, a monad is a software design pattern with a structure that combines program fragments (functions) and wraps their return values in a type with additional computation

So

(x, y) → x + y

can be curried into

x → (yx + y)

 

Or, in classical notation

f(x, y) = x + y

can be curried into

g(x) = yf(x, y)

curry

what is a monad

By John Agudelo