let foldi t ~init ~f =     let res = ref init in     for i = 0 to String.length t - 1 do       res := f i !res t.[i];     done;     !res