CArray.Fun1
The functions defined in this module are the same as the main ones, except that they are all higher-order, and their function arguments have an additional parameter. This allows us to prevent closure creation in critical cases.
Fun1.iter2 f x v1 v2 = iter (f x) v1 v2
module Smart : sig ... end