In theory there is no difference between theory and practice. In practice there is.
Yogu Berra
This article is not real theoretical explanation of monads. It is a simple practical tutorial for JavaScript developers showing how some monads can be used. It's for engineers, not scientists.
All examples are based on monet.js - a tool bag that assists Functional Programming by providing a rich set of Monads and other useful functions. In most examples I'll use arrow functions introduced in ES6 as they are much more readable for one single operation "callbacks". Also in some examples TypeScript like type definitions will be added to enhance overall readability.