From: mail@... Date: 2014-08-01T08:30:40+00:00 Subject: [ruby-core:64152] [ruby-trunk - Bug #10086] [PATCH] Remove exponents calculation from mathn.rb 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/