|
■No17222 (Azulean さん) に返信 >>#追記:従来のフラグ意味は「旗を上げる・下げるの2パターン」だったそうで、 >> そういう意味ではblnと変わりませんね。私は「行き先案内の旗」と考えていました。 > Windowsや.NET Frameworkで、フラグとは1つのビット(0 or 1の2状態)、あるいはビットの組み合わせを指すことが多いと思います。 >
んー… 調べてみましたが。 手元にある資料では、由来がみつかりませんでした。
少なくとも1970年のいくつかの論文には注釈なしで「flag」の記載がありました。 また、1971年のIntelのCPUではすでにflagが使われていました。 knuthの本などにflagという用語の説明が書いてあったりしましたので、どうもknuth以前のようです。 おそらく、情報ではなく電気の時代からあった用語でしょう。
情報科学の資料に限らなければ、ずいぶん昔から文学ではhang the flag, the flag signaledなどを 「〜を示す、〜ということがわかる」などというニュアンスで使っています。 敵が攻めてきたことを知らせたり、 火事を知らせたり、 先物価格が上がったことをしらせたり。
値が二値である点もですが、 「お昼を知らせる鐘」とは違い、 「なにかイベントを示しているんだが、こちらが能動的に確認しなければいけない」という点も、 まさにflagです。
ですので、「行き先案内の旗」や「手旗信号」ではありません。 岡や城に揚げられる、公知のための信号です。
wikipediaには「one or more bits」とあり、 他の辞書にも言及がありますので、 最近は複数の状態を取りうるものもflagと称す場合があるようです。
ですが、少なくとも90年よりまえにflagをbooleanでない用途に使ったものはありませんでした。 (古い資料ばかり見ていたので90年以降はわからない…)
いずれにせよ、元々は「signal」するか、していないものであって、 二値をとるものだったのは確実でしょう。 違う情報を伝えたい場合は、色や模様の違うflagを揚げるわけです。
言葉は誤解や不勉強で変化してしまいます。 たかだか10年や20年で意味が変わってしまって、 意味が通じないのであると資料性がほとんどありません。 変化して喜ぶのは、その変化を研究してる言語学者だけです。
過去との互換性のためにも、 言葉は努力して堅持するものであると私は思います。
誰が最初に使ったのかわかりませんが、 このすばらしいアナロジーを考えた人への敬意もこめて、 正しく使いましょう。
ちなみに… 手旗信号・腕木信号はsemaphoreで、まんまセマフォですね。
|