[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dennou-ruby:001863] Re: prefix of units
- To: <dennou-ruby@xxxxxxxxxxx>
- Subject: [dennou-ruby:001863] Re: prefix of units
- From: "EIJI TOYODA" <toyoda@xxxxxxxxxxxxxx>
- Date: Wed, 25 Aug 2004 23:44:46 -0500
- Importance: Normal
- Organization: University of Wisconsin-Madison
豊田です。
この辺の設計は単位辞書をメンテする人の気持ちしだいなので、
好きなようにしていただいて結構です。
で、どうしてこうなっているかというと、
(1) 単位の本来の名前 (metre, kilogramme 等) には接頭辞フルスペル (kilo,
milli 等) をつけ、
単位記号 (m, kg 等) には接頭辞記号 (k, m 等) をつける
(2) 単位の本来の名前には複数形があり、単位記号には複数形がない
(3) 英語の名詞の複数形はたいていのばあいいわゆる規則変化をする
(4) 単位の本来の名前と単位記号は異なる
という規則からきています。(1) (2) は信頼できる規則です(文献あげられないゴメ
ンナサイ)。
でも (3) (4) が怪しいのでまあなんというか単位名辞書ファイルでアバウトな
運用をしなくてはなりません。
Bar は (4) が破綻したです。
-----Original Message-----
From: Takeshi Horinouchi [mailto:horinout@xxxxxxxxxxxxxxxxxx]
Sent: Wednesday, August 25, 2004 9:19 PM
To: dennou-ruby@xxxxxxxxxxx
Subject: [dennou-ruby:001862] prefix of units
豊田様
NumRu::Units において、「ミリ」や「キロ」といった接頭辞に関し、
(1) 単数形のみの単位には M, k, m などの省略形
(2) 複数形もある単位には mega, kilo, milli などのフルの接頭辞
をつけたもののみ解釈することになってますが (makeutab.rb)、このルー
ルは一般的なものでしょうか。実は NCEP 再解析データでは圧力に
millibar という単位が使われており、かつ NumRu::Units では bar は
単数のみ扱いなので、(mbar は解釈しても) millibar は解釈しない
ことになってます。よって、上のルールに一般性がないなら、
(a) 複数形をとれるかどうかに関わらず、 M, k, m 型も mega,
kilo, milli 型も認める
というのがいいと思います。あるいは、個別の対応としては、
(b) bar は複数形をとれるようにする
というのもありますが、そうすると今度は mbar は解釈されなくなりま
すね。あるいは、
(c) millibar なんて使うな!
と叱られたりして、、、。
(1),(2) は慣例的に多くのケースで妥当と思いますが、グレイゾーンも
ありそうな気がしますので、(a) で対応するのが嬉しいです。そうして
しまっていいですか。単位が重なるケースが出てこないとも限りません
が、実際には、接頭辞のつかない単位にあてはまらない場合に限って、
接頭辞付で解釈できないか調べることになってますから、問題なかろう
と思います。ハッシュなので検索時間もさして増えないはずですから、
ライブラリーをロードしたときの初期化にかかる時間が増えるというぐ
らいしか、実用上の問題はなかろうと思います。
堀之内