「hoge」「foo」にもそれなりの意味がありました

Hibi

2007年11月14日 06:30



よくWebやMLなどのサンプルプログラムに
var hoge= new RosyLog();
などと「hoge」という変数などを目にすることがあります。

hogeを日本語にすると「ホゲ」となることから、適当な意味なんだろうなと思ってはいましたが、何となくその言葉を調べてみたらそれなりの意味があることが分かりました。

また、「hoge」以外にも適当な言葉もあり、日本と海外ではまた違う言葉もあることがわかりました。

その詳細は以下に。
サンプルプログラムなどに使用する「hoge」は「メタ構文変数」というプログラム上の識別子の一つだそうです。

メタ構文変数は意味の無い適当な変数のことで、「hoge」以外に「piyo」「fuga」「hogera「hogehoge」などがあるそうです。また、海外では「foo」「bar」「baz」「qux」「quux」「foobar」などが使用されるとのこと。
今まで、Web上でプログラムをいくつか見てきましたが、「hoge」「piyo」「foo」「bar」ぐらいは見たことがありますが、それ以外にも沢山あることは知りませんでした。(^_^;)

では、このhogeの語源は?というと1980年代前半に各所で同時発生した言葉らしく、その語源は今のところわかっていないようです。

ちなみにhogeの海外版である「foo」は インターネットに関する技術標準を定める正式文書であるRequest For CommentのRFC3092にも解説が載っています。

どうでもよいことですが、ちょっと調べてみるといろいろ出てきてなかなか面白いですね。


メタ構文変数 - Wikipedia
RFC3092(日本語訳)
A page of HOGE
関連記事