JargonFile/original/html/M/metasyntactic-variable.html
2014-03-27 18:54:56 +00:00

55 lines
7.4 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>metasyntactic variable</title><link rel="stylesheet" href="../../jargon.css" type="text/css"/><meta name="generator" content="DocBook XSL Stylesheets V1.61.0"/><link rel="home" href="../index.html" title="The Jargon File"/><link rel="up" href="../M.html" title="M"/><link rel="previous" href="meta-bit.html" title="meta bit"/><link rel="next" href="MFTL.html" title="MFTL"/></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">metasyntactic variable</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="meta-bit.html">Prev</a> </td><th width="60%" align="center">M</th><td width="20%" align="right"> <a accesskey="n" href="MFTL.html">Next</a></td></tr></table><hr/></div><dt><a id="metasyntactic-variable"/><dt xmlns="" id="metasyntactic-variable"><b>metasyntactic variable</b>: <span xmlns="http://www.w3.org/1999/xhtml" class="grammar">n.</span></dt></dt><dd><p> 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 <a href="../F/foo.html"><i class="glossterm">foo</i></a> is the
<a href="../C/canonical.html"><i class="glossterm">canonical</i></a> example. To avoid confusion, hackers
never (well, hardly ever) use &#8216;foo&#8217; 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
<a href="../S/scratch.html"><i class="glossterm">scratch</i></a> file that may be deleted at any time.</p><p>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 &#8220;<span class="quote">the value of
f(foo,bar) is the sum of foo and bar</span>&#8221;). However, it has been
plausibly suggested that the real reason for the term &#8220;<span class="quote">metasyntactic
variable</span>&#8221; 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:</p><div class="informaltable"><table border="1"><colgroup><col/><col/></colgroup><tbody><tr><td><a href="../F/foo.html"><i class="glossterm">foo</i></a>,
<a href="../B/bar.html"><i class="glossterm">bar</i></a>,
<a href="../B/baz.html"><i class="glossterm">baz</i></a>,
<a href="../Q/quux.html"><i class="glossterm">quux</i></a>,
quuux, quuuux...:
</td><td>MIT/Stanford usage, now found everywhere (thanks largely to
early versions of this lexicon!). At MIT (but not at Stanford),
<a href="../B/baz.html"><i class="glossterm">baz</i></a> dropped out of use for a while in the
1970s and '80s. A common recent mutation of this sequence inserts
<a href="../Q/qux.html"><i class="glossterm">qux</i></a>before <a href="../Q/quux.html"><i class="glossterm">quux</i></a>.</td></tr><tr><td>bazola, ztesch:</td><td>Stanford (from mid-'70s on).</td></tr><tr><td><a href="../F/foo.html"><i class="glossterm">foo</i></a>,
<a href="../B/bar.html"><i class="glossterm">bar</i></a>, thud, grunt:</td><td>This series was popular at CMU. Other CMU-associated variables
include <a href="../G/gorp.html"><i class="glossterm">gorp</i></a>.</td></tr><tr><td><a href="../F/foo.html"><i class="glossterm">foo</i></a>, <a href="../B/bar.html"><i class="glossterm">bar</i></a>, bletch:
</td><td>Waterloo University. We are informed that the CS club at
Waterloo formerly had a sign on its door reading
&#8220;<span class="quote">Ye Olde Foo Bar and Grill</span>&#8221;; this led to an attempt
to establish &#8220;<span class="quote">grill</span>&#8221; as the third metasyntactic variable,
but it never caught on.</td></tr><tr><td><a href="../F/foo.html"><i class="glossterm">foo</i></a>,
<a href="../B/bar.html"><i class="glossterm">bar</i></a>, fum:</td><td>This series is reported to be common at XEROX PARC.</td></tr><tr><td><a href="../F/fred.html"><i class="glossterm">fred</i></a>, jim, sheila,
<a href="../B/barney.html"><i class="glossterm">barney</i></a>:</td><td>See the entry for
<a href="../F/fred.html"><i class="glossterm">fred</i></a>. These tend to be Britishisms.</td></tr><tr><td><a href="../F/flarp.html"><i class="glossterm">flarp</i></a>:</td><td>Popular at Rutgers University and among
<a href="../G/GOSMACS.html"><i class="glossterm">GOSMACS</i></a> hackers.</td></tr><tr><td>zxc, spqr, wombat:</td><td>Cambridge University (England).</td></tr><tr><td>shme</td><td>Berkeley, GeoWorks, Ingres. Pronounced
<span class="pronunciation">/shme/</span> with a short
<span class="pronunciation">/e/</span>.</td></tr><tr><td>foo, bar, baz, bongo</td><td>Yale, late 1970s.</td></tr><tr><td>spam, eggs</td><td><a href="../P/Python.html"><i class="glossterm">Python</i></a> programmers.</td></tr><tr><td>snork</td><td>Brown University, early 1970s.</td></tr><tr><td><a href="../F/foo.html"><i class="glossterm">foo</i></a>, <a href="../B/bar.html"><i class="glossterm">bar</i></a>, zot
</td><td>Helsinki University of Technology, Finland.</td></tr><tr><td>blarg, <a href="../W/wibble.html"><i class="glossterm">wibble</i></a></td><td>New Zealand.</td></tr><tr><td>toto, titi, tata, tutu</td><td>France.</td></tr><tr><td>pippo, pluto, paperino</td><td>Italy. Pippo <span class="pronunciation">/pee´po/</span>
and Paperino
<span class="pronunciation">/pa·per·ee'·no/</span>
are the Italian names for Goofy and Donald Duck.</td></tr><tr><td>aap, noot, mies</td><td>The Netherlands. These are the first words a child used to
learn to spell on a Dutch spelling board.</td></tr><tr><td>oogle, foogle, boogle; zork, gork, bork</td><td>These two series (which may be continued with other initial
consonents) are reportedly common in England, and said to go back to
Lewis Carroll.</td></tr></tbody></table></div><p> Of all these,
only <span class="firstterm">foo</span> and <span class="firstterm">bar</span> are universal (and
<a href="../B/baz.html"><i class="glossterm">baz</i></a> nearly so). The compounds
<a href="../F/foobar.html"><i class="glossterm">foobar</i></a> and <span class="firstterm">foobaz</span> also enjoy very wide currency. Some
jargon terms are also used as metasyntactic names;
<a href="../B/barf.html"><i class="glossterm">barf</i></a> and <a href="mumble.html"><i class="glossterm">mumble</i></a>, for example.
See also <a href="../C/Commonwealth-Hackish.html"><i class="glossterm">Commonwealth Hackish</i></a> for discussion of
numerous metasyntactic variables found in Great Britain and the
Commonwealth.</p></dd><div class="navfooter"><hr/><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="meta-bit.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="../M.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="MFTL.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">meta bit </td><td width="20%" align="center"><a accesskey="h" href="../index.html">Home</a></td><td width="40%" align="right" valign="top"> MFTL</td></tr></table></div></body></html>