From: Kenta Murata Date: 2011-09-13T10:23:35+09:00 Subject: [ruby-core:39499] [Ruby 1.9 - Feature #5310] Integral objects Issue #5310 has been updated by Kenta Murata. Target version changed from 1.9.x to 2.0 ---------------------------------------- Feature #5310: Integral objects http://redmine.ruby-lang.org/issues/5310 Author: Kenta Murata Status: Open Priority: Normal Assignee: Category: core Target version: 2.0 I believe it is ambiguous what object can behave as an integral number. I don't think the current use of Object#to_int isn't appropriate for this purpose. The most understandable example is Float#to_int. It should raise error for all float values because they always have uncertainty, but it doesn't and returns an integral part of it. I propose to change the use of Object#to_int for the next release of Ruby. I recommend the following specification changes: (1) Remove to_int method from Float and BigDecimal. (2) Rational#to_int returns an Integer only if its denominator is 1. Otherwise, it raises an appropriate error. (3) Complex#to_int returns the result of to_int of its real part only if its imaginary part is exactly zero (0.0 isn't exactly zero). If anyone have another idea, please give me your comment. -- http://redmine.ruby-lang.org