Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
3
Task/Monads-Maybe-monad/Zkl/monads-maybe-monad-1.zkl
Normal file
3
Task/Monads-Maybe-monad/Zkl/monads-maybe-monad-1.zkl
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
fcn bind(a,type,b){ if(type.isType(a)) b else Void }
|
||||
fcn just(x){ if(Deferred.isType(x)) x() else x } // force lazy evaluation
|
||||
fcn rtn(x) { just(x) }
|
||||
8
Task/Monads-Maybe-monad/Zkl/monads-maybe-monad-2.zkl
Normal file
8
Task/Monads-Maybe-monad/Zkl/monads-maybe-monad-2.zkl
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
fcn add(mx,my){
|
||||
bind(mx,Int,
|
||||
bind(my,Int,
|
||||
'+.fp(mx,my))) : rtn(_) // create a lazy mx+my to avoid eager eval
|
||||
}
|
||||
add(1,2).println(); // two ints
|
||||
add(1,2.0).println(); // int and float
|
||||
add(self,2).println(); // class and int
|
||||
Loading…
Add table
Add a link
Reference in a new issue