メタ構文変数
読み:めたこうぶん-へんすう
外語:metasyntactic variables
プログラミング言語のサンプルコードなどで、例示のために使われる特に意味を持たない名前。
概要
変数名やファイル名などの例示に使われる文字列である。
予約語など言語仕様上のキーワードとすぐに見分けが付くよう、明らかに無意味そうな文字列が選ばれて使われており、なおかつその目的のために慣例化されている。
これを、実際のプログラム中で使用することは少ない。古くは車のナンバーや看板などの風刺画によく出現した。
特徴
由来
語源は定かではないが、"FOO, Lampoons and Parody"(Charles and Robert Crumb、1958)というコミックから広がったという説、海兵隊が使っていた言葉 "fubar" を分けた説などがある。
なお、fubarは "fucked up beyond recognition" の略で、「めちゃくちゃの」という意味があり、さらにYeddish語の "feh"、英語の "fooey"といったものを加えた、複数の語源から生じた言葉だろうといわれている。
なお、「"Foo" の語源」と題したジョークRFCのRFC 3092が、2001(平成13)年に発表されている。
foo、barの二つが多く使われるが、他に、baz zot qux quux corge grault garply waldo fred plugh xyzzy thudなどがある。
用例
改行コードがDOS形式のファイルをUNIX形式に変更するには、
% tr -d '\r' < foo.txt > foo.unix
とすれば良い。
派生など
実際には以下のように使用される。
- foo, bar, baz, quux (MITやスタンフォード大学)
- foo, bar, thud, grunt (カーネギーメロン大学)
- foo, bar, fum (Xerox PARC)
- foo, bar, zot (ヘルシンキ大学)
- hoge, hogehoge (日本)
- hoge, fuga, piyo (日本)
- toto, titi, tata, tutu (フランス)
- pippo, pluto, paperino (イタリア)
規格で決まっているわけではないので、方言(?)のようなものも多数あるため、必ずしもこの通りとは限らない。
再検索