|See http://en.wikipedia.org/wiki/Monads_in_functional_programming as the primary source of references.
In Haskell, u is called return, and m is called combinator, or 'join'.
Haskell books mention List as an example of a monad, and have a rather special interpretation of State Machine Monad.
Another example of a monad is Google's map/reduce.
This course translated into Russian, on habra