Metasyntactic Variable: Difference between revisions

Content deleted Content added
→‎Literature: copyedit
No edit summary
Line 4: Line 4:
|"John Doe"}}
|"John Doe"}}


A '''Metasyntactic Variable''' -- also called a "[[Placeholder Name]]" -- is a word or phrase used in the place of another word or phrase in any of several contexts. By mathematical analogy, a metasyntactic variable is a word that is a variable for other words, just as in algebra letters are used as variables for numbers.
A '''Metasyntactic Variable''' -- also called a '''"Placeholder Name"''' -- is a word or phrase used in the place of another word or phrase in any of several contexts. By mathematical analogy, this is the linguistic equivalent of letters that are used as variables for numbers in algebra, calculus and the like.


In computing and technology contexts, these words are commonly found in source code and are intended to be modified or substituted before real-world usage. The words '''foo''' and '''bar''' are good examples as they are used in over 330 [[w:Internet Engineering Task Force|Internet Engineering Task Force]] [[w:Request for Comments|Requests for Comments]], the documents which define foundational internet technologies like HTTP (websites), TCP/IP, and email protocols. Metasyntactic variables are used to name entities such as variables, functions, and commands whose exact identity is unimportant and serve only to demonstrate a concept, which is useful for teaching programming. A short examination of Metasyntactic Variables as used in computing can be found [https://blog.codinghorror.com/variable-foo-and-other-programming-oddities/ at the ''Coding Horror'' blog].
In computing and technology contexts, these words are commonly found in source code and are intended to be modified or substituted before real-world usage. The words '''foo''' and '''bar''' are good examples as they are used in over 330 [[w:Internet Engineering Task Force|Internet Engineering Task Force]] [[w:Request for Comments|Requests for Comments]], the documents which define foundational internet technologies like HTTP (websites), TCP/IP, and email protocols. Metasyntactic variables are used to name entities such as variables, functions, and commands whose exact identity is unimportant and serve only to demonstrate a concept, which is useful for teaching programming. A short examination of Metasyntactic Variables as used in computing can be found [https://blog.codinghorror.com/variable-foo-and-other-programming-oddities/ at the ''Coding Horror'' blog].
Line 12: Line 12:
Some fields have their own specific placeholder terminology. For example, "widget"<ref>Not to be confused with [[Widget Series|our usage of the term]]</ref> in economics, engineering and electronics, or "Blackacre" and "John Doe" or "Jane Doe" in law.
Some fields have their own specific placeholder terminology. For example, "widget"<ref>Not to be confused with [[Widget Series|our usage of the term]]</ref> in economics, engineering and electronics, or "Blackacre" and "John Doe" or "Jane Doe" in law.


Compare with:
Compare with [[Bland-Name Product]], where the variable is based on a Real Life brand name and the reader or viewer is expected to notice the reference; [[The Trope Without a Title]], in which a description (sometimes so vague as to be meaningless) is used instead of a name; and [[Buffy-Speak]], where the speaker is making up what sound like metasyntactic variables on the fly because he can't remember (or never knew) the actual terms.

* [[Bland-Name Product]], where the variable is based on a Real Life brand name and the reader or viewer is expected to notice the reference;
* [[The Trope Without a Title]], in which a description (sometimes so vague as to be meaningless) is used instead of a name; and
* [[Buffy-Speak]], where the speaker is making up what sound like metasyntactic variables on the fly because they can't remember (or never knew) the actual terms.


{{examples}}
{{examples}}
Line 43: Line 47:
''and 'St: 'st: 'st: and What's-his-name, and also You-know-who:
''and 'St: 'st: 'st: and What's-his-name, and also You-know-who:
''The task of filling up the blanks I'd rather leave to you.}}
''The task of filling up the blanks I'd rather leave to you.}}

== [[Video Games]] ==
* ''[[NetHack]]'': "Foo" is a loanword from hacker jargon often used in discussions of this game, typically those involving sets of creatures with similar characteristics (e.g. [[Horny Devils|foocubi]] and [[Our Werebeasts Are Different|werefoo]]).


== [[Web Comics]] ==
== [[Web Comics]] ==
Line 58: Line 65:
* Metasyntactic variables used commonly across all programming languages include ''foobar, foo, bar, baz, qux, quux, quuz, corge, grault, garply, waldo, fred, [[Colossal Cave Adventure|plugh, xyzzy]]'', and ''thud''.
* Metasyntactic variables used commonly across all programming languages include ''foobar, foo, bar, baz, qux, quux, quuz, corge, grault, garply, waldo, fred, [[Colossal Cave Adventure|plugh, xyzzy]]'', and ''thud''.
** ''Wibble, wobble, wubble'', and ''flob'' are also used in the UK.
** ''Wibble, wobble, wubble'', and ''flob'' are also used in the UK.
* Japanese programmers commonly use ''hoge'' (ほげ) and ''piyo'' (ぴよ), with other common words and variants being ''fuga'' (ふが), ''hogera'' (ほげら), and ''hogehoge'' (ほげほげ).
** Japanese programmers commonly use ''hoge'' (ほげ) and ''piyo'' (ぴよ), with other common words and variants being ''fuga'' (ふが), ''hogera'' (ほげら), and ''hogehoge'' (ほげほげ).
* In France, the word ''toto'' is widely used by programmers, with variants ''tata, titi'', and ''tutu'' as related placeholders.
** In France, the word ''toto'' is widely used by programmers, with variants ''tata, titi'', and ''tutu'' as related placeholders.
* The [[w:Whatchamacallit (candy)|''Whatchamacallit'' bar]], a chocolate/peanut butter/caramel candy bar introduced by Hershey in 1978, uses a Metasyntactic Variable as its name to emphasize what at the time of its release was a candy bar allegedly radically different from any produced before.
* The [[w:Whatchamacallit (candy)|''Whatchamacallit'' bar]], a chocolate/peanut butter/caramel candy bar introduced by Hershey in 1978, uses a Metasyntactic Variable as its name to emphasize what at the time of its release was a candy bar allegedly radically different from any produced before.
** Hershey also briefly produced a chocolate-peanut butter bar called the ''Thingamajig'', which was available from 2009 to 2012.
** Hershey also briefly produced a chocolate-peanut butter bar called the ''Thingamajig'', which was available from 2009 to 2012.
* "X-ray" was originally a placeholder name for an [[Unknown Phenomenon|unexplained phenomenon]], with "X" representing, as in algebra, the unknown.
* "X-ray" was originally a placeholder name for an [[Unknown Phenomenon|unexplained phenomenon]], with "X" representing the unknown, as in algebra.
* It is common to use the name "[[Acme Products|ACME]]" in example SQL Databases and as placeholder company-name for the purpose of teaching. The term 'ACME Database' is commonly used to mean a training or example-only set of database data used solely for training or testing. ACME is also commonly used in documentation which shows SQL usage examples, a common practice with in many educational texts as well as technical documentation from companies such as Microsoft and Oracle.
* It is common to use the name "[[Acme Products|ACME]]" in example SQL Databases and as placeholder company-name for the purpose of teaching. The term 'ACME Database' is commonly used to mean a training or example-only set of database data used solely for training or testing. ACME is also commonly used in documentation which shows SQL usage examples, a common practice with in many educational texts as well as technical documentation from companies such as Microsoft and Oracle.
* "Advent corporation" is a term used by lawyers to describe an as yet unnamed corporation, while legal incorporation documents are being prepared.
* "Advent corporation" is a term used by lawyers to describe an as yet unnamed corporation, while legal incorporation documents are being prepared.