RosettaCodeData/Task/Loops-For/Rocq/loops-for.rocq

24 lines
399 B
Text
Raw Permalink Normal View History

2026-04-30 12:34:36 -04:00
Section FOR.
Variable T : Type.
Variable body : nat -> T -> T.
Variable start : nat.
Fixpoint for_loop n : T -> T :=
match n with
| O => fun s => s
| S n' => fun s => for_loop n' (body (start + n') s)
end.
End FOR.
Eval vm_compute in
for_loop _
(fun i =>
cons
(for_loop _
(fun j => cons tt)
0 (S i) nil
)
)
0 5 nil.