[#6864] ruby 1.8.4 rc breaks alias_method/rails in bad ways — "Ara.T.Howard" <ara.t.howard@...>

20 messages 2005/12/09
[#6870] Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways — =?ISO-8859-15?Q?Florian_Gro=DF?= <florgro@...> 2005/12/12

Ara.T.Howard wrote:

[#6872] Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways — ara.t.howard@... 2005/12/12

On Tue, 13 Dec 2005, [ISO-8859-15] Florian Growrote:

[#6873] Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways — James Edward Gray II <james@...> 2005/12/12

On Dec 12, 2005, at 1:19 PM, ara.t.howard@noaa.gov wrote:

[#6874] Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways — ara.t.howard@... 2005/12/12

On Tue, 13 Dec 2005, James Edward Gray II wrote:

[#6891] Time.utc! and Time.localtime! — Daniel Hobe <hobe@...>

Writing a script yesterday I found out, much to my surprise, that the

16 messages 2005/12/14

[#6918] change to yaml in 1.8.4 — ara.t.howard@...

14 messages 2005/12/16

[#6934] 1.8.x, YAML, and release management — Ryan Davis <ryand-ruby@...>

I'm concerned that 1.8.3's acceptance of non-backwards-compatible

28 messages 2005/12/18

[#6996] Problems building 1.8.4 with VS8 C++ Express Edition (cl 14.00) — Austin Ziegler <halostatue@...>

Visual Studio C++ 2005 Express Edition (VS 8.0)

20 messages 2005/12/27

Re: Math.sqrt(-1) inconsistancies

From: Daniel Berger <djberg96@...>
Date: 2005-12-29 20:58:35 UTC
List: ruby-core #7026

--- Jeffrey Dik <jeffrey.dik@myrealbox.com> wrote:

> Hi,
> 
> I've noticed some inconsistancies with
> Math.sqrt(-1).  Here's what the
> rdoc in math.c says:
> 
> /*
>  *  call-seq:
>  *     Math.sqrt(numeric)    => float
>  *
>  *  Returns the non-negative square root of
> <i>numeric</i>. Raises
>  *  <code>ArgError</code> if <i>numeric</i> is less
> than zero.
>  */

Documentation bug.  It calls rb_sys_fail() internally,
which raises whatever error your platform would raise.
 So, ArgError (which should be ArgumentError anyway)
should be replaced with SystemCallError in the
documentation.

Another option is, as you suggest, to explicitly raise
an ArgumentError if the number is less than zero. 
Maybe there was a good reason for removing this but I
couldn't tell you what it is.

A third option would be to have an explicit MathError
class raised for all functions that fail in math.c.  I
doubt that's an option at this point, though.

Regards,

Dan


	
		
__________________________________ 
Yahoo! for Good - Make a difference this year. 
http://brand.yahoo.com/cybergivingweek2005/

In This Thread

Prev Next