[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

DDTSS レビュー gperf



やまだです。

ubuntu から取り込まれた訳を私と khibino さんが修正した gperf をレビューしました。


Short description

原文: Perfect hash function generator
訳文: 完全ハッシュ関数の生成プログラム

Long description

原文:
gperf is a program that generates perfect hash functions for sets of
key words.
.
A perfect hash function is simply: A hash function and a data structure
that allows recognition of a key word in a set of words using exactly 1
probe into the data structure.

訳文:
gperf は完全ハッシュ関数をいくつかのキーワードを元に生成するプログラム
です。
.
完全ハッシュ関数とは簡単に説明すると、データ構造をちょうど一度だけ検査
することにより、ワード一式の中からキーワードを認識するハッシュ関数とデ
ータ構造の事です。


Comment field:
using exactly 1 probe into the data structure.
---
データ構造に対してちょうど一度だけプローブすることにより

とかどうですかね。 by khibino
あるいはデータ構造をちょうど一度だけ検査することにより  のがいいかなぁ

修正してみました。 khibino


Log:

the old suggestion log:
0--- new log ---
1241970451 updated text by tyamada (mm)
1242107829 change-comment-only by khibino
1242108260 change-comment-only by khibino
1242109196 change-comment-only by khibino
1242110692 change-comment-only by khibino
1242720198 updated text by khibino (mM)


これは 1 時間半くらい考えてみました。

第 1 パラグラフは、
「gperf は完全ハッシュ関数をいくつかのキーワードを元に生成する
プログラムです。」
から語順を変えて、
「gperf は与えられたキーワードのリストのための完全ハッシュ関数を
生成するプログラムです。」
としたものと、どちらが読みやすいでしょうか?

「完全ハッシュ関数を」と「生成する」の距離が離れていると
読みやすさが低下すると思われます。


第 2 パラグラフは、
「完全ハッシュ関数とは簡単に説明すると、データ構造をちょうど一度だけ検査
することにより、ワード一式の中からキーワードを認識するハッシュ関数とデ
ータ構造の事です。」
から、
「完全ハッシュ関数とは単にハッシュ関数とデータ構造のことですが、
データ構造を一回参照するだけでワードリスト中のキーワードの認識を
可能にします。」
に修正としたものと、どちらが読みやすいでしょうか?
「that」の前後で説明をわける方が、説明が平易になると思います。


完全ハッシュ関数の説明については、次の説明が参考になります。

http://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%83%E3%82%B7%E3%83%A5%E9%96%A2%E6%95%B0
> ハッシュ関数とは、もとのデータからある一定範囲の数値を生成する関数である。
> 理想的には、異なったデータからは常に異なったハッシュ値が得られることが
> 望ましいが(完全ハッシュ関数)、

http://www.radiumsoftware.com/0407.html
> 「完全ハッシュ関数」 (perfect hashing) とは,全てのキーから異なるハッシュ値を
> 導き出す(つまり衝突の発生しない)ハッシュ関数のことを指す。

http://www.ibm.com/developerworks/jp/linux/library/l-gperf.html

gperf を使うメリットは、上の文章では十分に説明されていないような
印象です。


レビュー前の文章は間違いではないので、コメントの追加をしておきました。

-- 
Takuma Yamada <tyamada@xxxxxxxxxxxxxxxx>
http://blog.livedoor.jp/tyamada22/