http://adit.io/posts/2013-04-17-functors,_applicatives,_and_monads_in_pictures.html
Tag Archives: Monad
Transducer is Monad ?
No, they are different things:
1. Transducer: Process transformation.
2. Monad: Design Pattern.
Monad Libraries in Clojure
Brian Beckman: Don’t fear the Monad
Keywords: Function, Monoid, Monad
Monoid: A Set with an operation of composition which has: 1) Identity; 2) Associativity.
(or equivalent: Monoid is a Group minus Inverse)
Example:
f: a –> a,
g: a–>a,
h: a–> a
fo(goh) = (fog)oh
Monad:
f: a –> Ma,
g: a–>Ma,
h: a–> Ma
Ma : certain transformation to a, eg. sin(a) + cos (a)….
Same to Associative and Identity.
Note: You don’t have to know Category to apply Monad to programming.
图形具体化说明Monad :
http://www.ruanyifeng.com/blog/2015/07/monad.html
Monad In Scheme/Lisp:
http://www.ccs.neu.edu/home/dherman/research/tutorials/monads-for-schemers.txt
Functor, Applicative & Monad in Clojure:
http://fluokitten.uncomplicate.org/articles/functors_applicatives_monads_in_pictures.html