diff options
Diffstat (limited to 'stdlib/maybe.milch')
| -rw-r--r-- | stdlib/maybe.milch | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/stdlib/maybe.milch b/stdlib/maybe.milch index 086b0dc..4114e22 100644 --- a/stdlib/maybe.milch +++ b/stdlib/maybe.milch @@ -1,11 +1,11 @@ ; LIB -(let! Maybe/just (\[a] +(let Maybe/just (\[a] ["Maybe" "just" a])) -(let! Maybe/nothing (\[] +(let Maybe/nothing (\[] ["Maybe" "nothing"])) -(let! Maybe/#at (\[n seq] +(let Maybe/#at (\[n seq] (match seq [] (fatal! "Maybe/#at out of bounds") @@ -16,26 +16,26 @@ otherwise (Maybe/#at (- n 1) (tail seq)))))) -(let! Maybe/unpack (Maybe/#at 2)) -(let! Maybe/kind (Maybe/#at 1)) +(let Maybe/unpack (Maybe/#at 2)) +(let Maybe/kind (Maybe/#at 1)) -(let! Maybe/map (\[f m] +(let Maybe/map (\[f m] (match (Maybe/kind m) "just" (Maybe/just (f (Maybe/unpack m))) "nothing" (Maybe/nothing)))) -(let! Maybe/and-then (\[f m] +(let Maybe/and-then (\[f m] (match (Maybe/kind m) "just" (f (Maybe/unpack m)) "nothing" (Maybe/nothing)))) ; TESTING -;; (let! print-line! (\[s] +;; (let print-line! (\[s] ;; (print! (concat s "\n")))) -;; (let! a (Maybe/just 10)) -;; (let! b (Maybe/nothing)) +;; (let a (Maybe/just 10)) +;; (let b (Maybe/nothing)) ;; (Maybe/map (+ 5) a) ;; (Maybe/map (+ 5) b) @@ -43,7 +43,7 @@ ;; (Maybe/and-then (\[n] (Maybe/just (+ n 5))) a) ;; (Maybe/and-then (\[n] (Maybe/just (+ n 5))) b) -;; (let! m (Maybe/just 10)) +;; (let m (Maybe/just 10)) ;; (match m ;; (Maybe/just _) ;; (print-line! (fmt "found just {0}!" [(Maybe/unpack m)])) |
