monads
[lambda.git] / topics / _week7_monads.mdwn
diff --git a/topics/_week7_monads.mdwn b/topics/_week7_monads.mdwn
new file mode 100644 (file)
index 0000000..21ac2f5
--- /dev/null
@@ -0,0 +1,17 @@
+Monads
+======
+
+The [[tradition in the functional programming
+literature|https://wiki.haskell.org/Monad_tutorials_timeline]] is to
+introduce monads using a metaphor: monads are spacesuits, monads are
+monsters, monads are burritos.  We're part of the backlash that
+prefers to say that monads are monads.  
+
+The closest we will come to metaphorical talk is to suggest that
+monadic types place objects inside of boxes, and that monads wrap and
+unwrap boxes to expose or enclose the objects inside of them.  In any
+case, the emphasis will be on starting with the abstract structure of
+monads, followed by instances of monads from the philosophical and
+linguistics literature.
+
+To