|
metasyntactic variable n.
A name used in examples and
understood to stand for whatever thing is under discussion, or any
random member of a class of things under discussion. The word
foo is the canonical example. To avoid confusion,
hackers never (well, hardly ever) use `foo' or other words like
it as permanent names for anything. In filenames, a common
convention is that any filename beginning with a
metasyntactic-variable name is a scratch file that may be
deleted at any time.
Metasyntactic variables are so called because (1) they are
variables in the metalanguage used to talk about programs etc; (2)
they are variables whose values are often variables (as in usages
like "the value of f(foo,bar) is the sum of foo and bar").
However, it has been plausibly suggested that the real reason for
the term "metasyntactic variable" is that it sounds good.
To some extent, the list of one's preferred metasyntactic variables
is a cultural signature. They occur both in series (used for
related groups of variables or objects) and as singletons. Here
are a few common signatures:
- foo, bar, baz, quux, quuux, quuuux...:
- MIT/Stanford usage, now found everywhere (thanks largely to early
versions of this lexicon!). At MIT (but not at Stanford), baz
dropped out of use for a while in the 1970s and '80s. A common
recent mutation of this sequence inserts qux before quux.
- bazola, ztesch:
- Stanford (from mid-'70s on).
- foo, bar, thud, grunt:
- This series was popular at CMU. Other CMU-associated variables
include gorp.
- foo, bar, bletch:
- Waterloo University. We are informed that the CS club at Waterloo
formerly had a sign on its door reading "Ye Olde Foo Bar and Grill";
this led to an attempt to establish "grill" as the third
metasyntactic variable, but it never caught on.
- foo, bar, fum:
- This series is reported to be common at XEROX PARC.
- fred, jim, sheila, barney:
- See the entry for fred. These tend to be Britishisms.
- corge, grault, flarp:
- Popular at Rutgers University and among GOSMACS hackers.
- zxc, spqr, wombat:
- Cambridge University (England).
- shme
- Berkeley, GeoWorks, Ingres. Pronounced /shme/ with a short /e/.
- foo, bar, baz, bongo
- Yale, late 1970s.
- spam, eggs
- Python programmers.
- snork
- Brown University, early 1970s.
- foo, bar, zot
- Helsinki University of Technology, Finland.
- blarg, wibble
- New Zealand.
- toto, titi, tata, tutu
- France.
- pippo, pluto, paperino
- Italy. Pippo /pee'po/ and Paperino
/pa-per-ee'-no/ are the Italian names for Goofy and Donald Duck.
- aap, noot, mies
- The Netherlands. These are the first words a child used to learn to spell
on a Dutch spelling board.
- oogle, foogle, boogle; zork, gork, bork
- These two series (which may be continued with other initial
consonents) are reportedly common in England, and said to go
back to Lewis Carroll.
Of all these, only `foo' and `bar' are universal (and baz
nearly so). The compounds foobar and `foobaz' also enjoy
very wide currency.
Some jargon terms are also used as metasyntactic names; barf
and mumble, for example. See also Commonwealth Hackish
for discussion of numerous metasyntactic variables found in Great
Britain and the Commonwealth.
|