[#27638] tcltkstub cause SEGV — KIMURA Koichi <kbk@...>
木村です。
なかだです。
山本です。
[#27651] [TIPS] .ext へのコピーの負荷低減 — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
なかだです。
山本です。
[#27663] refactored shellwords.rb has bug? — KIMURA Koichi <kimura.koichi@...>
木村です。
[#27666] patch for Makefile.in — Takahiro Kambe <taca@...>
pkgsrcの方で、Min Sik Kim氏により加えられた変更です。
[#27674] Numeric#div — Koji Arai <jca02266@...>
新井です。お久しぶりです。
[#27680] patch for BeOS (HEAD) — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
山本です。
In article <20051111081454.EDF9CD78.ocean@m2.ccsnet.ne.jp>,
山本です。
[#27695] trap & sleep doens't work on windows HEAD. — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
[#27711] Re: [ruby-list:41557] Re: Windowsにおける共有フォルダーでのDir.globは一覧を返さない? — "U.Nakamura" <usa@...>
こんにちは、なかむら(う)です。
山本です。
こんにちは、なかむら(う)です。
山本です。
こんにちは、なかむら(う)です。
山本です。
こんにちは、なかむら(う)です。
小西 弘将です。
こんにちは、なかむら(う)です。
山本です。
[#27729] Thread deadlock when signale handler raise exception — Tatsuki Sugiura <sugi@...>
こんにちは。杉浦です。
[#27735] FNM_CASEFOLD on case-sensitive system — nobuyoshi nakada <nobuyoshi.nakada@...>
なかだです。
山本です。
山本です。
なかだです。
なかだです。
山本です。
なかだです。
山本です。
[#27738] File.split("A:a/b") and File.split("A://///") on mswin32 — Tanaka Akira <akr@...17n.org>
ちょっと調べていて気がついたのですが、
こんにちは、なかむら(う)です。
[#27754] ruby-mode の emacs 収録 — Seiji Zenitani <zenitani@...>
はじめて投稿します。
[#27758] File.dirname("///foo/bar/baz/qux") on cygwin — Tanaka Akira <akr@...17n.org>
次に cygwin における
こんにちは、なかむら(う)です。
In article <20051121093604.3A67.USA@garbagecollect.jp>,
こんにちは、なかむら(う)です。
わたなべです。
In article <1191-Mon21Nov2005112905+0900-eban@os.rim.or.jp>,
こんにちは、なかむら(う)です。
In article <20051121120453.3A70.USA@garbagecollect.jp>,
In article <87ek5a665s.fsf@m17n.org>,
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
なかだです。
なかだです。
こんにちは、なかむら(う)です。
なかだです。
こんにちは、なかむら(う)です。
In article <20051121191101.3A88.USA@garbagecollect.jp>,
[#27766] 1.8.4 preview2? — "URABE Shyouhei aka.mput" <root@...>
卜部です。間が空きましたが
まつもと ゆきひろです
なかだです。
[#27818] Re: [ ruby-Bugs-2872 ] TCPServer should not use SO_REUSEADDR in Cygwin port — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
まつもと ゆきひろです
こんにちは、なかむら(う)です。
こんにちは、なかむら(う)です。
こんにちは、なかむら(う)です。
まつもと ゆきひろです
こんにちは、なかむら(う)です。
まつもと ゆきひろです
こんにちは、なかむら(う)です。
[#27825] 1.8.4 preview test failed (soap/ssl/test_ssl.rb) — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
[#27836] autoload with const_missing — SASADA Koichi <ko1@...>
ささだです。
[#27839] ruby 1.8 dumps core — Tanaka Akira <akr@...17n.org>
最近、boron でやっている chkbuild で ruby-1.8 が test-all 中
山本です。
In article <20051128190225.14D66C20.ocean@m2.ccsnet.ne.jp>,
In article <20051130210645.7228E2B0.ocean@m2.ccsnet.ne.jp>,
山本です。
In article <20051219120911.F876DDD0.ocean@m2.ccsnet.ne.jp>,
山本です。
山本です。
In article <20051219203218.8E517368.ocean@m2.ccsnet.ne.jp>,
まつもと ゆきひろです
[#27846] parser_params heap — Tanaka Akira <akr@...17n.org>
struct parser_params の heap ですが、Ripper のときとそうでな
[#27851] tail call and conservertive GC — Tanaka Akira <akr@...17n.org>
x86_64-linux で、gcc 4.0.3 20051111 なるものを用いて ruby
なかだです。
In article <TYOMLEM04FRaqbC8wSA0000003d@tyomlvem02.e2k.ad.ge.com>,
[#27871] Numeric と Complex — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
けいじゅ@いしつかです.
まつもと ゆきひろです
けいじゅ@いしつかです.
05/11/30 に 石塚圭樹<keiju@ishitsuka.com> さんは書きました:
まつもと ゆきひろです
卜部です。
まつもと ゆきひろです
うらべです。
まつもと ゆきひろです
原です。
まつもと ゆきひろです
けいじゅ@いしつかです.
まつもと ゆきひろです
けいじゅ@いしつかです.
まつもと ゆきひろです
[#27890] rb_funcall2() for protected method — nobuyoshi nakada <nobuyoshi.nakada@...>
なかだです。
まつもと ゆきひろです
[ruby-dev:27677] Re: Numeric#div
新井です。
In message "[ruby-dev:27676] Re: Numeric#div"
on 11 Nov 2005 02:01:29 +0900,
Yukihiro Matsumoto <matz@ruby-lang.org> wrote:
> まつもと ゆきひろです
> 今はa.div(b)は
>
> Integer(a / b)
>
> を返しています。整数除算の結果と浮動小数点数除算を整数化した
> ときで丸め方が違うということのようです。揃えるべきだとは思い
> ますが、どっちが望ましいのか私には分かりません。御意見希望。
商を q、余りを r として a/b = q..r のとき、数学的には
q = (a/b).floor
が普通(?詳しくはないですが)らしいので、Fixnum#div にあわ
せて floor で良いように思います。
floor なら
q = a.div(b)
r = a.modulo(b)
[q,r] = a.divmod(b)
という対応になるので(下記テスト参照)、divmod のメソッドが
div と modulo の結果を返すという点で名前的にもきれいです。
(divmod は div と異なり商に Float を返す場合がありますがまぁ
それはその方が実数演算に都合が良いのでしょう・・・か?)
def test_div(a, div, b, mod)
q = a.send(div, b)
r = a.send(mod, b)
printf("%5s == %3s * %3s + %4s ... %s : %s\n",
a, b, q, r,
a == b*q + r,
[q,r] == a.divmod(b))
end
nums = [[13,4], [13,-4], [-13,4],[-13,-13],
[11.5,4], [11.5,-4], [-11.5,4], [-11.5,-4]]
nums.each {|a, b|
test_div(a, :div, b, :modulo)
}
このテストを実行すると現状は
ruby 1.9.0 (2005-08-29) [i686-linux]
13 == 4 * 3 + 1 ... true : true
13 == -4 * -4 + -3 ... true : true
-13 == 4 * -4 + 3 ... true : true
-13 == -13 * 1 + 0 ... true : true
11.5 == 4 * 2 + 3.5 ... true : true
11.5 == -4 * -2 + -0.5 ... false : false
-11.5 == 4 * -2 + 0.5 ... false : false
-11.5 == -4 * 2 + -3.5 ... true : true
# ruby のバージョンが古くてすみせん
となりますが、div の定義が以下なら
class Numeric
def div(other)
self./(other).floor
end
end
ruby 1.9.0 (2005-08-29) [i686-linux]
-:2: warning: method redefined; discarding old div
13 == 4 * 3 + 1 ... true : true
13 == -4 * -4 + -3 ... true : true
-13 == 4 * -4 + 3 ... true : true
-13 == -13 * 1 + 0 ... true : true
11.5 == 4 * 2 + 3.5 ... true : true
11.5 == -4 * -3 + -0.5 ... true : true
-11.5 == 4 * -3 + 0.5 ... true : true
-11.5 == -4 * 2 + -3.5 ... true : true
となります。
逆に、
r = a.remainder(b)
に対応する商を返すメソッドが存在しないので、
div を今の Float#div にあわせて
q = a.quo(b).to_i
として定義すると remainder 的にきれいと言えばきれいなのです
が、Fixnum#/ と Fixnum#div で結果が変わる方が現実的に困る場
合がありそうなのでやはり floor の方で良いのではないでしょう
か?
互換性の点ですが、div の使用頻度は低いと思ってますので急いで
1.8 に入れなくても、1.9 で様子見で良いかと思います。
今まで気がつかれてないわけですし。
# もちろん、リファレンスの方では将来変更があることは宣伝して
# おくようにします。
後は数学に詳しい方の太鼓判があれば良いかと。
--
新井康司 (Koji Arai)