Pregunta de entrevista de General Dynamics Information Technology

Explain what a monad is in functional programming.