ruby-reference-manual:3380
From: "pypypy567 (py _)" <redmine@r...>
Date: Sat, 27 Oct 2012 20:28:31 +0900
Subject: [ruby-reference-manual:3380] [るりまプロジェクト - Bug #68] Matrix#row と Matrix#column のイテレーション
Issue #68 has been updated by pypypy567 (py _). File row_column.patch added #row と #column について気になる部分全部に手を入れてみたらこんな感じになりました。 ポイントをまとめてみると、 * Array#[] の説明を参考にしました。 * 1.9.2 で手が入ったようで、1.8.0 と 1.9.1 のコードはタブがスペースになってたりする以外はほぼ同じ、1.9.2 と trunk は全く同じに見えます。 * ブロック付きで呼んだ時の返り値は 1.9.1 まではループの返り値をそのまま返してるだけなので不定、1.9.2 以降は self。 * 範囲外のインデックスを指定した時の挙動は 1.9.1 以前は偶然そうなってるだけで 1.9.2 以降は意図的に見えます。 * 行ベクトルとか列ベクトルという言葉は避けた方が無難じゃないかと思いました。Vector オブジェクトはそういう情報を保持しないので。 * row の方は行ベクトルのつもりで扱ってたら失敗したということが有り得そうな気がするので一行追記 ---------------------------------------- Bug #68: Matrix#row と Matrix#column のイテレーション https://bugs.ruby-lang.org/issues/68#change-31797 Author: date (Ken DATE) Status: Open Priority: Low Assignee: Category: doc Target version: reporter: rock ruby_version: 1.8,1.9 =begin Matrix#row の説明が 第i番目の行ベクトルを返す。ブロックが与えられたときは、各行ベクトルについて、ブロックを繰り返す。 となっていますが,後半が誤りです。 ブロックが与えられたときは,各行ベクトルについてブロックを繰り返すのではなく, 指定した行の要素についてブロックを繰り返します。 なお,メソッドの呼び出し形式が「row(i)」しか挙がっていませんが, ブロックを与えたときの形も必要だと思います。 Matrix#column についても同様です。 ※こういう間違いだったら「優先度:High」でいいんでしょうか? ダメなら Normal に変えてください。 =end -- http://bugs.ruby-lang.org/ -- ML: ruby-reference-manual@m... Info: http://QuickML.com/