« Refsort/Ruby v2.93 to be released | トップページ | 引退して味わう特殊相対性理論 »

2018/09/11

Rersort/Ruby v2.94 Released

このところ Refsort/Ruby(リリース実績は新しいほうから *1 *2 *3 *4 *5 *6 *7 *8 *9 *10)のソースファイルを眺めているうちに,ムラムラと湧き上がるものがあって実装をいじっているうちに,辞書ファイルの重複したレコードやラベル,さらには入力の重複レコードを処理する部分を全面的に書き換えました.ただし仕様の変更は実質的に何もありません.

どういう内容かと言うと,まず辞書ファイルに重複したレコードがあると,同一のものが異なる複数の順位を持つことになるので,そもそもソーティングが原理的に成り立ちません.このため,辞書ファイルの読み込み時に重複したレコードを見つけると,従来は最初の重複ペアが見つかった時点でエラーメッセージを出して即座に処理を中止していました.しかし,これはあまり親切なやり方ではないので,辞書ファイルをすべて読み込んだうえで何々というレコードが何行目と何行目と何行目に重複して存在していると網羅的に報告し,それから処理を中止するようにしました.こうすれば辞書ファイルの作者は辞書の修正が容易です.

同様に,辞書ファイル中のラベル(つい最近までマイルストーンと呼んでいたもの)に重複が見つかった場合は,従来は五月雨式に重複ペアを報告しながら処理を続行していたのですが,こちらも辞書ファイルをすべて読み込んだ後で,重複しているラベルを網羅的に報告することにしました.なおラベルが重複しているとは,そのラベルの文字列(コメントを除く)とレベルがともに同一である場合です.またラベルが重複していてもソーティングに不都合はないため,処理はそのまま続行しますが,ソーティング結果には同一のラベルが異なる複数の箇所に現れることになりますので,本来は望ましくありません.辞書ファイルの修正が望ましいところです.

最後に入力の重複です.入力の重複自体には特に問題はなく,入力データとしては十分あり得る話ですし,ソーティング自体にも影響はありません.ユーザーが重複を検知するには -d オプションを使うことにしていますが,従来は重複したペアが見つかるたびに五月雨式に報告していました.しかしこれでは見にくいうえに全体像が分かりにくいので,これも入力をすべて読み終わった後で重複した入力を網羅的に報告し,処理を続行するように改めました.

これらの改訂を入れ込んだ新しい版 v2.94 を近日中にリリースします.またユーザーズガイドも書き直したものをアップロードすることにしました.ユーザーから見た場合には仕様上の変更は何もありませんが,警告文の出かたが見やすいものに変わるので,気づくことがあると思います.なおこの改訂によって処理速度はほとんど影響を受けないことを確認済みです.

| |

« Refsort/Ruby v2.93 to be released | トップページ | 引退して味わう特殊相対性理論 »

パソコン・インターネット」カテゴリの記事

自然」カテゴリの記事

IT関連情報」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: Rersort/Ruby v2.94 Released:

» Refsort/Ruby の Excel インターフェース [望湖庵日記 Lakeside Diary]
またまた Refsort/Ruby(リリース実績は新しいほうから *1 *2 *3 *4 *5 *6 *7 *8 *9 *10)ネタになってしまうのですが,引退して暇ができるとこのような事も出来てくるという見本です.かねてから,Refsort/Ruby を Excel 上で使えるようにしたいと思っていました.なぜならば... [続きを読む]

受信: 2018/09/29 14:49

» Refsort/Ruby v2.96 [望湖庵日記 Lakeside Diary]
辞書参照型ソーティングフィルタの Refsort/Ruby(新しいほうから *1 *2 *3 *4 *5)の小改良版をリリースしました.同時に,この Refsort を Excel 上で使用するためのインターフェースである Refsort on Excel(こちらも新しいほうから *1 *2 *3)もわずかながら改良し... [続きを読む]

受信: 2018/12/12 08:52

« Refsort/Ruby v2.93 to be released | トップページ | 引退して味わう特殊相対性理論 »