Hi,

Under 64 bits environment, CRuby2.0 inlines float values (just like
Fixnum) where possible.

							matz.

In message "Re: [ruby-core:54202] Re: Has ObjectSpace changed recently?"
    on Fri, 12 Apr 2013 07:03:11 +0900, David MacMahon <davidm / astro.berkeley.edu> writes:
|
|You're also missing Float::EPSILON.  Which ruby version are you running?  FWIW, I don't see this problem here...
|
|$ ruby -v
|ruby 2.0.0p0 (2013-02-24 revision 39474) [i686-linux]
|
|$ ruby -e 'a = 102.7
|       b = 95.1
|       p ObjectSpace.each_object(Float).to_a'
|[2.718281828459045, 3.141592653589793, NaN, Infinity, 2.220446049250313e-16, 1.7976931348623157e+308, 2.2250738585072014e-308, 95.1, 102.7]
|
|Dave
|
|On Apr 11, 2013, at 2:24 PM, Dave Thomas wrote:
|
|> I just noticed that in 2.0, I see this:
|> 
|>        a = 102.7
|>        b = 95.1
|>        p ObjectSpace.each_object(Float).to_a 
|> #=> [NaN, Infinity, 1.7976931348623157e+308, 2.2250738585072014e-308]
|> 
|> In 1.9.3, it is
|> 
|> #=> [95.1, 102.7, 2.718281828459045, 3.141592653589793, NaN, Infinity, 2.220446049250313e-16, 1.7976931348623157e+308, 2.2250738585072014e-308]
|> 
|> So the 20 version is missing the Math::PI and E constants, along with my two local variables.
|> 
|> 
|> Dave