diff options
Diffstat (limited to 'examples.scm')
-rw-r--r-- | examples.scm | 8 |
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"] |