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