From: Yukihiro Matsumoto Date: 2011-04-15T09:08:18+09:00 Subject: [ruby-core:35760] Re: [Ruby 1.9 - Bug #4577][Open] (int...float).max should not raise an error Hi, In message "Re: [ruby-core:35754] [Ruby 1.9 - Bug #4577][Open] (int...float).max should not raise an error" on Fri, 15 Apr 2011 00:02:07 +0900, redmine@ruby-lang.org writes: |---------------------------------------- |Bug #4577: (int...float).max should not raise an error |http://redmine.ruby-lang.org/issues/4577 |(int...float).max (without a block) will raise an error: | |(({p (1...9.3).max # cannot exclude non Integer end value (TypeError)})) | |I don't think it should do so. OK, you don't think it should do so, then what do you think it should do? ... makes ranges excludes the end point. When the end point is floating point number, what should be the max value of the range, that should be less than (and not equals to) the end point? I don't think ((end_obj-1).ceil) is not the best value for #max, since we don't define excluding end point by ((end_obj-1).ceil). yet, at least. matz.