struct   type t = float   let compare (a: float) (b: float) = compare a b   let to_string i = string_of_float i   let of_string s = try Some (float_of_string s) with _ -> None end