Understanding Values and Functions in OCaml