RosettaCodeData/Task/Loops-While/ATS/loops-while-1.ats

21 lines
303 B
Plaintext

#include "share/atspre_staload.hats"
fn
loop_while () : void =
let
fun
loop {n : int | 0 <= n} .<n>.
(n : uint n) : void =
if n <> 0U then
begin
println! (n);
loop (n / 2U)
end
in
loop 1024U
end
implement
main0 () =
loop_while ()