aboutsummaryrefslogtreecommitdiff
path: root/examples.scm
diff options
context:
space:
mode:
Diffstat (limited to 'examples.scm')
-rw-r--r--examples.scm8
1 files changed, 8 insertions, 0 deletions
diff --git a/examples.scm b/examples.scm
index 1fd453c..7eed583 100644
--- a/examples.scm
+++ b/examples.scm
@@ -21,6 +21,10 @@
y <- (just 20)
(+ x y)) ; => 30
+(do (just 10)
+ (nothing)
+ (just 20)) ; => [Nothing]
+
;;; Writer Monad, and do notation
;; Int -> Writer Int String
@@ -31,3 +35,7 @@
b <- (log-number 5)
(writer (* a b) ""))
;; => [Writer 15, "Got nuber: 3, Got nuber: 5, "]
+
+(do (log-number 3)
+ (log-number 5))
+;; => [Writer 5, "Got nuber: 3Got nuber: 5"]