From: Yukihiro Matsumoto Date: 2013-04-12T07:15:13+09:00 Subject: [ruby-core:54203] Re: Has ObjectSpace changed recently? 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 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