The two monad tutorials referenced in the talk and the clojure.contrib.monads source explain monads in the same way:<p><a href="http://onclojure.com/2009/03/05/a-monad-tutorial-for-clojure-programmers-part-1/" rel="nofollow">http://onclojure.com/2009/03/05/a-monad-tutorial-for-clojure...</a>
<a href="http://intensivesystems.net/tutorials.html" rel="nofollow">http://intensivesystems.net/tutorials.html</a><p>The onclojure tutorial shows how (let ..) and (for ..) expressions are all about nested functions and how you can construct them yourself with monads. Be sure to work through it to part 4 which shows an elegant solution using monads for the Monty Hall problem, which is about probabilities and distributions.