M .builds/alpine.yml +1 -1
@@ 17,7 17,7 @@ tasks:
opam switch create 4.06.0
- setup-environment: |
eval $(opam env)
- opam install -y hll pds js_of_ocaml
+ opam install -y hll pds js_of_ocaml js_of_ocaml-ppx
- build: |
eval $(opam env)
cd byocm/code
M .builds/freebsd.yml +1 -1
@@ 16,7 16,7 @@ tasks:
opam switch create 4.06.0
- setup-environment: |
eval $(opam env)
- opam install -y hll pds js_of_ocaml
+ opam install -y hll pds js_of_ocaml js_of_ocaml-ppx
- build: |
eval $(opam env)
cd byocm/code
M code/src/byocm_fut/byocm_fut.mli +14 -0
@@ 1,3 1,17 @@
+(** This module provides a basic promise/future implementation with an infix
+ monadic implementation.
+
+ A promise is a container for a value which will be set at some point in the
+ future. A promise can only be set once. A future is a value which is used
+ to wait for the value of a promise to be set. A future is read-only while a
+ promise is write-only.
+
+ An API will generally be written like:
+
+ [ let p = Promise.create () in
+ let callback v = Promise.set p v in
+ schedule_work callback;
+ Promise.future p ] *)
type +'a t
module Promise : sig