Issue #13309 has been updated by naruse (Yui NARUSE).

Status changed from Open to Rejected

It should be done by gem.
This will depends Unicode CLDR, and it's beyond Ruby itself's scope.

----------------------------------------
Feature #13309: Locale paramter for Integer(), Float(), Rational()
https://bugs.ruby-lang.org/issues/13309#change-64934

* Author: sawa (Tsuyoshi Sawada)
* Status: Rejected
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
Matz' comment to my proposal on `Kernel#Boolean()` (https://bugs.ruby-lang.org/issues/13260) led me to the idea of introducing an optional locale parameter (called under the name `allow` in #13260). And now, I think that that idea can be applied generally to the `Kernel#Integer`, `Kernel#Float`, and `Kernel#Rational` methods.

There seems to be constant demand to parse numbers written in different languages, and there is no official clean way to handle the problem. I thought we can let these methods take an optional locale parameter to allow inputs in different languages.

```ruby
Float("4,294,967,295.0") # => 4294967295.0 English, by default
Float("4,294,967,295.0", locale: "en") # => 4294967295.0
Float("4 294 967.295,0", locale: "de") # => 4294967295.0
Float("4 294 967 295,0", locale: "fr") # => 4294967295.0
```

Cf. https://docs.oracle.com/cd/E19455-01/806-0169/overview-9/index.html



-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>