let of_roman s = try Ok (arabic (String.uppercase s)) with BadNumeral c -> error "invalid char in Roman numeral" c sexp_of_char