Functional Programming, Haskell, Computer Science, Lambda Calculus, Algorithms.
must instead unroll all loops in your programs. As an illustration, here is addition in EAL Calculus of Constructions: λ (a : Nat) -> λ (b : Nat) -> Λ (P : *) -> λ (s : ! (P -> P)) -> let S = s in let f = a P |S in let g = b P |S in | λ z : P -> f (g z) Compare to the same thing on the pure