Difference between revisions of "Blog articles/Monads"
From HaskellWiki
DonStewart (talk  contribs) (→Monads) 
(Added a link.) 

(35 intermediate revisions by 8 users not shown)  
Line 11:  Line 11:  
* [http://sigfpe.blogspot.com/2007/06/howtowritetolerablyefficient.html How to write tolerably efficient optimzation code without really trying...] 
* [http://sigfpe.blogspot.com/2007/06/howtowritetolerablyefficient.html How to write tolerably efficient optimzation code without really trying...] 

* [http://sigfpe.blogspot.com/2007/06/monadsfromalgebraandthegraycode.html Monads from Algebra and the the Gray Code from Groups] 
* [http://sigfpe.blogspot.com/2007/06/monadsfromalgebraandthegraycode.html Monads from Algebra and the the Gray Code from Groups] 

+  * [http://sigfpe.blogspot.com/2006/06/monadskleisliarrowscomonadsand.html Monads, Kleisli Arrows, Comonads and other Rambling Thoughts] 

+  * [http://sigfpe.blogspot.com/2007/11/iomonadforpeoplewhosimplydont.html The IO Monad for People who Simply Don't Care] 

* [http://cgi.cse.unsw.edu.au/~dons/blog/2006/12/11#interpreterswithreadermonads Quick interpreters with the Reader monad] 
* [http://cgi.cse.unsw.edu.au/~dons/blog/2006/12/11#interpreterswithreadermonads Quick interpreters with the Reader monad] 

* [http://hierodule.livejournal.com/69052.html Monads] 
* [http://hierodule.livejournal.com/69052.html Monads] 

Line 31:  Line 33:  
* [http://therning.org/magnus/archives/269 repeat and sequence] 
* [http://therning.org/magnus/archives/269 repeat and sequence] 

* [http://lukeplant.me.uk/blog.php?id=1107301659 What's a monad?] 
* [http://lukeplant.me.uk/blog.php?id=1107301659 What's a monad?] 

+  * [http://comonad.com/reader/2007/parameterizedmonadsinhaskell/ Parameterized Monads in Haskell] 

+  * [http://ahamsandwich.wordpress.com/2007/07/26/monadsandwhymonadtutorialsareallawful/ Monads! (and Why Monad Tutorials Are All Awful)] 

+  * [http://www.haskell.org/haskellwiki/Monads_as_computation Monads as computation] 

+  * [http://davblog48.blogspot.com/2007/08/monadsarehardtoteach.html Monads are hard to teach] 

+  * [http://luqui.org/blog/archives/2007/08/05/haskellstateaccessorssecondattemptcomposability/ Haskell State Accessors (second attempt: Composability)] 

+  * [http://www.bofh.org.uk/articles/2007/08/07/monads Beginning with monads] 

+  * [http://dailykibitz.blogspot.com/2007/08/learningaboutcomputationalmonads.html Learning about (Computational) Monads ] 

+  * [http://osteele.com/archives/2007/12/overloadingsemicolon Overloading Semicolon, or, monads from 10,000 Feet] 

+  * [http://mvanier.livejournal.com/3917.html Yet Another Monad Tutorial] 

−  +  == Monad transformers == 

* [http://conway.rutgers.edu/~ccshan/wiki/blog/posts/Monad_transformers.html A twisted history of monad transformers] 
* [http://conway.rutgers.edu/~ccshan/wiki/blog/posts/Monad_transformers.html A twisted history of monad transformers] 

Line 40:  Line 51:  
* [http://scsibug.com/2006/11/28/asimplegamewithstatet/ A Simple Game with StateT] 
* [http://scsibug.com/2006/11/28/asimplegamewithstatet/ A Simple Game with StateT] 

−  === 
+  === Continuation monads === 
+  
+  * [http://therning.org/magnus/archives/306 Continuing with Continuations] 

+  
+  == Arrows == 

* [http://kpreid.livejournal.com/7351.html Concatenative programming in Haskell's Arrows] 
* [http://kpreid.livejournal.com/7351.html Concatenative programming in Haskell's Arrows] 

* [http://abstractabsurd.blogspot.com/2007/04/arrowssecurity.html Arrows and security] 
* [http://abstractabsurd.blogspot.com/2007/04/arrowssecurity.html Arrows and security] 

+  * [http://cgi.cse.unsw.edu.au/~dons/blog/2007/07/31 Run length encoding in Haskell] 

+  * [http://neilbartlett.name/blog/2007/08/01/haskellexplainingarrowsthroughxmltransformationa/ Haskell: Explaining Arrows through XML Transformations] 

+  * [http://www.drmaciver.com/2007/08/playingwitharrows/ Playing with Arrows] 

+  * [http://onthebalcony.wordpress.com/2007/02/19/myevolutionasahaskellprogrammer/ My Evolution as a Haskell Programmer: Factorial with Arrows] 

+  * [http://monadicheadaches.blogspot.com/2007/12/arrowsfirstencounter.html Arrows first encounter] 

−  +  == Comonads == 

* [http://sigfpe.blogspot.com/2007/02/comonadsandreadingfromfuture.html Comonads and reading from the future] 
* [http://sigfpe.blogspot.com/2007/02/comonadsandreadingfromfuture.html Comonads and reading from the future] 

* [http://sigfpe.blogspot.com/2006/12/evaluatingcellularautomatais.html Evaluating cellular automata is comonadic] 
* [http://sigfpe.blogspot.com/2006/12/evaluatingcellularautomatais.html Evaluating cellular automata is comonadic] 

* [http://gelisam.blogspot.com/2007/04/iunderstandcomonads.html Understanding comonads] 
* [http://gelisam.blogspot.com/2007/04/iunderstandcomonads.html Understanding comonads] 

+  
+  == Applicative Functors == 

+  
+  Nobody has written blog articles on applicative functors  so how about a functional pearl: 

+  
+  * [http://www.soi.city.ac.uk/~ross/papers/Applicative.pdf Applicative Programming with Effects] 

+  
+  == Further reading == 

+  
+  * [http://haskell.org/haskellwiki/Research_papers/Monads_and_arrows Research papers on monads, comonads and arrows] 

+  * [http://haskell.org/haskellwiki/Category:Monad Wiki articles about monads] 

+  * [http://en.wikibooks.org/wiki/Haskell/Understanding_monads Understanding monads] 

+  * [http://en.wikibooks.org/wiki/Haskell/Advanced_monads Advanced monads] 

+  * [http://en.wikibooks.org/wiki/Haskell/Monad_transformers Monad transformers] 
Latest revision as of 01:44, 28 January 2011
Contents
Monads
 The monad laws
 The Trivial Monad
 Tracking tainted data: Homeland Security Threat Level Monad
 Monads: a field guide
 Variable substitution gives a ... monad
 The monad behind every zipper
 Monads for vector spaces, probability and quantum mechanics pt. I
 Monads, Vector Spaces and Quantum Mechanics pt. II
 How to write tolerably efficient optimzation code without really trying...
 Monads from Algebra and the the Gray Code from Groups
 Monads, Kleisli Arrows, Comonads and other Rambling Thoughts
 The IO Monad for People who Simply Don't Care
 Quick interpreters with the Reader monad
 Monads
 More on Haskell, Side Effects and Code Reuse
 A First Step Into Monads
 More Monads: Stateful Programming
 The theory of monads
 A newbie in Haskell land or another monad tutorial
 A newbie in Haskell land : The (>) monad
 Smart classification using Bayesian monads
 3 open problems with monads
 Monads in 15 minutes: Backtracking and Maybe
 How to make Data.Set a monad
 Monads work because they have a tight interface
 Haskell: bootstrapping into a clue about monads
 Why monads matter
 Monads through Pictures
 Monads as universe helpers
 Simple state monad
 repeat and sequence
 What's a monad?
 Parameterized Monads in Haskell
 Monads! (and Why Monad Tutorials Are All Awful)
 Monads as computation
 Monads are hard to teach
 Haskell State Accessors (second attempt: Composability)
 Beginning with monads
 Learning about (Computational) Monads
 Overloading Semicolon, or, monads from 10,000 Feet
 Yet Another Monad Tutorial
Monad transformers
 A twisted history of monad transformers
 How To Use Monad Transformers
 Local and global side effects with monad transformers
 Grok monad transformers
 A Simple Game with StateT
Continuation monads
Arrows
 Concatenative programming in Haskell's Arrows
 Arrows and security
 Run length encoding in Haskell
 Haskell: Explaining Arrows through XML Transformations
 Playing with Arrows
 My Evolution as a Haskell Programmer: Factorial with Arrows
 Arrows first encounter
Comonads
 Comonads and reading from the future
 Evaluating cellular automata is comonadic
 Understanding comonads
Applicative Functors
Nobody has written blog articles on applicative functors  so how about a functional pearl: