MonadicProgramming
Last edit August 1, 2014
Monadic programming is a way to write functional programs. It forms a separate paradigm from classic
FunctionalProgramming
, because it provides a different way of structuring programs.
Here are some pointers:
"What the hell are Monads?"
(1999) by
NoelWinstanley
(
http://www.cs.pdx.edu/~antoy/Courses/TPFLP/lectures/MONADS/Noel/research/monads.html
)
"Monads for the Working Haskell Programmer -- a short tutorial"
by
TheodoreNorvell
(
http://www.engr.mun.ca/~theo/Misc/haskell_and_monads.htm
)
"All About Monads -- A comprehensive guide to the theory and practice of monadic programming in Haskell"
(
http://www.nomaware.com/monads/html/index.html
)
MonadsInRuby
--
http://moonbase.rydia.net/mental/writings/programming/monads-in-ruby/00introduction.html
A monad is formally defined here:
http://wombat.doc.ic.ac.uk/foldoc/foldoc.cgi?monad
In plain terms, a monad is a set of rules that enforce regular behavior but broad enough to allow most computational processes to be expressed as a monad.
The wikipedia entry:
http://en.wikipedia.org/wiki/Monads_in_functional_programming
See
OnMonads
and
MonadTransformer
. Also see
ProgrammingParadigm
.
has
BrokenLink
s
CategoryFunctionalProgramming