> 來源:http://www.ruanyifeng.com/blog/2015/07/monad.html
> 作者:阮一峰
函數式編程有一個重要概念,叫做[Monad](https://en.wikipedia.org/wiki/Monad_%28functional_programming%29)。

網上有很多解釋([這里](http://stackoverflow.com/questions/2704652/monad-in-plain-english-for-the-oop-programmer-with-no-fp-background)和[這里](http://stackoverflow.com/questions/44965/what-is-a-monad)),但都很抽象,不容易看懂。我嘗試了好多次,還是不明白Monad到底是什么。

昨天,我讀到了[Aditya Bhargava](http://adit.io/posts/2013-04-17-functors,_applicatives,_and_monads_in_pictures.html)的文章,他畫了很多圖。我想了半天,終于恍然大悟。下面,我就用這些圖來解釋Monad。