let iter (func: 'data -> unit) (stack: 'data stack) : unit =
  for i = 0 to stack.size - 1 do
    func stack.stack.(i)
  done