alms-0.6.0: examples/futures1.alms
(* An example with futures *)
#load "libthread"
let prompt () = Future.new getLine
let rec printDots count delay =
if count <= 0
then ()
else
putStr ".";
flush ();
AThread.delay (1000 * delay);
printDots (count - 1) delay
let main message =
putStrLn message;
let future = prompt () in
printDots 80 20;
putStrLn "";
putStrLn (Future.sync future)
in main "whadday say? "