[Ironruby-core] Code Review (External): NumericalFixes

Peter Bacon Darwin bacondarwin at googlemail.com
Sat Oct 11 04:20:43 EDT 2008


OK, I mean to raise a bug about this one.  There is some funniness inside
MRI's string formatting of floating point numbers.  Feel free to change it
back but then one of the Float specs fails.

I think the relevant one is something like:

10000000000000.0.to_s.should == "100000000000000.0"

100000000000000.0.to_s.should == "1.0E+15"

But IronRuby produces "1.0E+14" and "1.0E+15" or something like that.  I
think it has to do with whether you count the trailing zero as a significant
digit.

Pete

 

From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of John Lam
(IRONRUBY)
Sent: Friday,10 October 10, 2008 23:08
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] Code Review (External): NumericalFixes

 

You changed this line:

 

            StringFormatter sf = new StringFormatter(scope, "%.15g", new
object[] { self });

 

To:

 

            StringFormatter sf = new StringFormatter(scope, "%.14g", new
object[] { self });

 

Why the reduced # of digits? This is causing one of the specs to fail:

 

1)

Math.sqrt returns the square root of the argument FAILED

Expected "123456789.12346"

 to equal "123456789.123457"

 

Thanks,

-John

 

From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Peter Bacon Darwin
Sent: Thursday, October 09, 2008 12:00 PM
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] Code Review (External): NumericalFixes

 

Pushed the bug fixes to SVN r160.  Someone on MS side needs to look at
ironruby-tags and make sure it is up to date.

Pete

 

From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of John Lam
(IRONRUBY)
Sent: Thursday,09 October 09, 2008 17:17
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] Code Review (External): NumericalFixes

 

Looks good. Please check into SVN and I'll integrate. Note that I'm pushing
out r159 in a few minutes, so you'll need to update and regenerate the
initializers before you check in.

 

Thanks,

-John

 

From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Peter Bacon Darwin
Sent: Thursday, October 09, 2008 7:21 AM
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] Code Review (External): NumericalFixes

 

Thanks Jim.  I pulled the latest rubyspecs and there are no unexpected
failures.

 

Still waiting for someone to review my code...

 

Pete

 

From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Jim Deville
Sent: Wednesday,08 October 08, 2008 21:44
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] Code Review (External): NumericalFixes

 

If you are running against the RubySpec's version of RubySpecs (as opposed
to the IronRuby repo) you may want to sync and test again. I pushed some
changes last night that make some of the float comparison do numerical
comparisons instead of string comparisons.

 

 

JD

 

From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Peter Bacon Darwin
Sent: Wednesday, October 08, 2008 10:09 AM
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] Code Review (External): NumericalFixes

 

Ping!

 

From: Peter Bacon Darwin [mailto:bacondarwin at googlemail.com] 
Sent: Tuesday,07 October 07, 2008 14:38
To: 'ironruby-core at rubyforge.org'
Subject: Code Review (External): NumericalFixes 

 

A number of fixes to pass most of the relevant rubyspecs.

                BignumOps.cs: Leftshift and Rightshift fixes

                FixnumOps.cs: Leftshift, Rightshift, Bitwise_Xor,
Bitwise_And and Bitwise_Or fixes

                FloatOps.cs: Constant and IsNegativeZero modification.  Also
partial fix to ToS

                Integer.cs: DownTo and UpTo fixes

                Numeric.cs: Remainder and Step fixes.

 

(There are now only 2 failures in Numeric, 1 in Float and a number in
Bignum.)

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20081011/23a11bb7/attachment.html>


More information about the Ironruby-core mailing list