packages feed

alms-0.6.0: examples/threads2.alms

(* Another example with threads. *)

let rec printer () =
  Thread.delay 100000;
  putStr "x";
  flush ();
  printer ()

let startStop () =
  let id = Thread.fork printer in
  let id = Thread.print id in
    λ () → Thread.kill id

let timer () =
  let stop = startStop () in
    Thread.delay 2000000;
    stop ()

in timer ()