[#64517] Fw: Re: Ruby and Rails to become Apache Incubator Project — Tetsuya Kitahata <kitahata@99.alumni.u-tokyo.ac.jp>

What do you think? >> Ruby developers

13 messages 2014/08/23

[#64615] [ruby-trunk - Feature #10181] [Open] New method File.openat() — oss-ruby-lang@...

Issue #10181 has been reported by Technorama Ltd..

10 messages 2014/08/28
[#64616] Re: [ruby-trunk - Feature #10181] [Open] New method File.openat() — Eric Wong <normalperson@...> 2014/08/28

I like this feature.

[#64671] Fwd: [ruby-changes:35240] normal:r47322 (trunk): symbol.c (rb_sym2id): do not return garbage object — SASADA Koichi <ko1@...>

Why this fix solve your problem?

9 messages 2014/08/30
[#64672] Re: Fwd: [ruby-changes:35240] normal:r47322 (trunk): symbol.c (rb_sym2id): do not return garbage object — SASADA Koichi <ko1@...> 2014/08/30

(2014/08/30 8:50), SASADA Koichi wrote:

[ruby-core:64152] [ruby-trunk - Bug #10086] [PATCH] Remove exponents calculation from mathn.rb

From: mail@...
Date: 2014-08-01 08:30:40 UTC
List: ruby-core #64152
Issue #10086 has been updated by gogo tanaka.

File improve_rdoc_mathn_l8.patch added
File improve_rdoc_mathn_l20.patch added

@Yusuke Endoh さん

よこやりありがとうございます.

はい. 全くもって正しいご指摘だと思います. すみません僕が修正する際に気づくべきでした.


引き合いに出された文全体を

>mathn serves to make mathematical operations more precise in Ruby 
and to integrate other standard libraries.

にまた、別の部分(mathn.rb:L20)で


> mathn features late rounding and lacks truncation of intermediate results:

という表現があったので

> mathn keeps value in exact terms.


に変更致します.

gogo.

----------------------------------------
Bug #10086: [PATCH] Remove exponents calculation from mathn.rb
https://bugs.ruby-lang.org/issues/10086#change-48156

* Author: gogo tanaka
* Status: Feedback
* Priority: Normal
* Assignee: 
* Category: lib
* Target version: 
* ruby -v: 2.1.1p76
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
#English

When we override `:**`, we make it alias as `:power!` (mathn.rb:L73, L102)

Like this.

```
alias power! ** unless method_defined? :power!
```

If user have define `:power!`, this `:power!` is called unintentionally.(mathn.rb:L82, L111)

```
  def ** (other)
    if self < 0 && other.round != other
      Complex(self, 0.0) ** other
    else
      power!(other)
    end
  end
```


Now that we can do such a exponents calculation without `mathn`, we don't need exetend `:**` in mathn.

That's why I remove `:**` from mathn.rb

#日本語

mathn.rb で `:**` を上書きする際に元の `:**` を `:power!` としてaliasを貼っていますが、(mathn.rb:L73, L102)

```
alias power! ** unless method_defined? :power!
```
使用者が `#power!` を定義していた場合、

(mathn.rb:L82, L111)

```
  def ** (other)
    if self < 0 && other.round != other
      Complex(self, 0.0) ** other
    else
      power!(other)
    end
  end
```


の部分で意図せず利用者が定義した`:power!` が呼ばれ可能性があるため、

またそもそもこの種の冪乗演算は `mathn` を必要とせずとも現在は実現されているため、

:** を `mathn` から削除致しました.

---Files--------------------------------
Remove_Fixnum#power_from_mathn.patch (810 Bytes)
Remove_Bignum#power_from_mathn.patch (811 Bytes)
Remove_Float#power_from_mathn.patch (496 Bytes)
Remove_Rational#power_from_mathn.patch (2.08 KB)
Fix_comment_at_mathn.patch (430 Bytes)
improve_rdoc_mathn_l8.patch (478 Bytes)
improve_rdoc_mathn_l20.patch (301 Bytes)


-- 
https://bugs.ruby-lang.org/

In This Thread

Prev Next