[#28015] RCR: RUBY_VERSION_INT — Roger Pack <rogerdpack2@...>

Situation:

14 messages 2010/02/02

[#28113] [Bug #2723] $: length affects re-require time of already loaded files — Greg Hazel <redmine@...>

Bug #2723: $: length affects re-require time of already loaded files

16 messages 2010/02/08

[#28151] [Bug #2739] ruby 1.8.7 built with pthreads hangs under some circumstances — Joel Ebel <redmine@...>

Bug #2739: ruby 1.8.7 built with pthreads hangs under some circumstances

31 messages 2010/02/11

[#28188] [Bug #2750] build fails on win32/MinGW: "executable host ruby is required." even when --with-baseruby is used — Christian Bodt <redmine@...>

Bug #2750: build fails on win32/MinGW: "executable host ruby is required." even when --with-baseruby is used

9 messages 2010/02/16

[#28206] Is Math module a wrapper of libm? — Yusuke ENDOH <mame@...>

Hi matz --

23 messages 2010/02/18
[#28212] Re: Is Math module a wrapper of libm? — Yukihiro Matsumoto <matz@...> 2010/02/18

Hi,

[#28219] Re: Is Math module a wrapper of libm? — Yusuke ENDOH <mame@...> 2010/02/18

Hi,

[#28225] Re: Is Math module a wrapper of libm? — Marc-Andre Lafortune <ruby-core-mailing-list@...> 2010/02/18

Hi,

[#28233] Re: Is Math module a wrapper of libm? — Kenta Murata <muraken@...> 2010/02/18

Hi,

[#28265] Re: Is Math module a wrapper of libm? — Marc-Andre Lafortune <ruby-core-mailing-list@...> 2010/02/20

Hi,

[#28286] Re: Is Math module a wrapper of libm? — Kenta Murata <muraken@...> 2010/02/21

Hi

[#28291] Re: Is Math module a wrapper of libm? — Marc-Andre Lafortune <ruby-core-mailing-list@...> 2010/02/22

Hi!

[#28235] [Feature #2759] Regexp /g and /G options — Michael Fellinger <redmine@...>

Feature #2759: Regexp /g and /G options

35 messages 2010/02/18

[#28329] [ANN] Ruby 1.9.2dev has passed RubySpec! — Yusuke ENDOH <mame@...>

Hi,

12 messages 2010/02/24

[#28355] [ANN] Toward rich diversity of Ruby development. — Urabe Shyouhei <shyouhei@...>

A short announcement: thanks to some helps of GitHub people, I now have

12 messages 2010/02/27

[#28365] Indentifying key MRI-on-Windows issues — Jon <jon.forums@...>

In an effort to begin summarizing key MRI-on-Windows open issues I'm starting this thread in hopes that those interested will respond with details on the key MRI issues they feel need resolution for Windows users.

11 messages 2010/02/27
[#28690] Re: Indentifying key MRI-on-Windows issues — Roger Pack <rogerdpack2@...> 2010/03/16

> My key concern is http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-=

[ruby-core:28302] Re: Is Math module a wrapper of libm?

From: Marc-Andre Lafortune <ruby-core-mailing-list@...>
Date: 2010-02-23 05:15:21 UTC
List: ruby-core #28302
So here's a summary of the changes that Kenta and I propose, followed
by final questions for everyone.

** Compared to Ruby 1.8:

 - New Exception class: DomainError, raised by mathematical functions
for inputs without well defined results
 - Errno::EDOM and Errno::ERANGE are no longer raised.
 - Corner cases are now platform independent; a few deviate from SUSv3
(see below)

** Interpretation of SUSv3:

 - Domain Errors: Ruby 1.9 raises a DomainError in these cases
 - Pole Errors: Ruby 1.9 returns +-Infinity, as appropriate.
 - Range Errors: Ruby 1.9 returns the under/overflowed result.

** Ruby 1.9 deviates from SUSv3 in a few corner cases:

 - Math.atan2(+-0.0, +-0.0) raises a DomainError (instead of returning
+-pi/2 or +-0.0)
 - Math.atan2(+-Infinity, +-Infinity) raises a DomainError (instead of
returning +-pi/4 or +-3pi/4)
 - Math.lgamma(-Infinity) raises a DomainError (instead of returning +Infinity)
 - Math.sqrt(-0.0) returns 0.0  (instead of -0.0)



** Remaining questions

 1) Is it ok if 0.0/0.0 raises a DomainError instead of returning NaN?

This has the benefits of making the treatment of domain errors
consistent. The only way to get a NaN from a calculation would then be
to explicitly use Float::NAN for an input.
This might imply some incompatibilities, though?
Should Ruby 1.8.7/8 issue a warning?

2) Should DivisionByZero error be a subclass of DomainError?

I feel it should, but I don't know how much changes to error class
hierarchy should be avoided.

3) Should the new DomainError be a subclass of ArgumentError, or of
RuntimeError?

ArgumentError makes sense to me, but I'm not sure why it was
originally chosen that DivisionByZero was not an ArgumentError.

4) Since we never raise Errno::EDOM and Errno::ERANGE, should they
still be defined?

Removing them might cause incompatibilities (?) but keeping them might
give the wrong impression.


Hopefully others can chime in on these 4 questions?

In This Thread