Talk:Metasyntactic variable/Archive 1

PAGE ARCHIVED 20080114 kf4yfd (talk) 16:33, 14 January 2008 (UTC)

Etymology

 * "[foobar] suggests that foo may have originated with the World War II slang term fubar, as an acronym for fucked up beyond all recognition."

Source for this? 'fubar' seems to have been a corruption of the German 'furchtbar' later expanded into a backronym; given the prewar popularity of 'foo', 'foobar' may well have been the original form. &#8212; 68.43.142.209


 * From the Jargon File: "I enjoyed reading that it might have originated (in one of its streams of origin) in the German furchtbar (furcht means fright or terror and bar is the adjective suffix for -able, so furchtbar means 'terrible'). Then it certainly makes sense that in WWII the English speakers, who borrowed German language into their slang, would shift it to the slang and acronym form FUBAR (F---'ed Up Beyond All Recognition) to describe something in their situation. . . . The other streams of origin, backing into the comics of the 1920s and the Chinese fortune-cookie word Fu for happiness, are equally interesting." Comics from the 1920s used the word, so it may have been borrowed from the German in WW1, or the two origins have become interconnected. --Jor 22:27, 19 Feb 2004 (UTC)


 * Of course, the problem with the German origin is that 1) No uses of "fubar" have yet been found prior to 1944; 2) No uses of the German word in otherwise English texts has yet been recorded, which would be a necessary step before the spelling change and before the supposed creation of the backronym; 3) At the time of either world war, Anglophones would be highly unlikely to borrow a German word--and soldiers, among whom the word first appeared and to whom the word was specific until after the war, were even less likely; 4) Backronyms were very, very rare at the time of World War II. �&mdash;Grant Barrett, project editor, Historical Dictionary of American Slang (19 Dec. 2005).


 * Back when I was a frosh (1982), the list at Caltech was approximately Foo Bar Spam Bletch. Real Programmers had no need for more than that.  Baz and Frobozz were definitely unfamiliar, and Eggs was completely unheard of.   I don't think this usage is unique to Tech.  I wouldn't mind softening the "canonical list" wording a bit, but can't think of anything better at the moment.
 * On the other hand, googling "foo bar spam" turns up 145 hits, "foo bar bletch" 467, and "foo bar baz" 38,000. Going by popularity, "foo bar baz" is canonical.  But then by that measure Windoze is the canonical OS. -dmh (see Wiktionary for full info).


 * My list usually goes "foo", "bar", "baz", "xip", "quux". I don't know where I picked "xip" up from, but it's in my vocabulary. Maybe a note to the effect that one can create ones' own names? I remember reading (in the Jargon File, probably) something along the lines of "you can create your own magic numbers. Pick a number. Use it. See? It's magic!". Same goes for variable names: I recently wrote some Javascript that uses Morpheus, Neo, Smith, and whoaDejaVu as function names because I was too lazy/drunk to think of more appropriate ones.


 * Quux may deserve a special mention, being a widely-used metasyntactic variable that "has returned to its inventor in the form of a nickname" (Jargon File?). --Cuervo 11:26, 29 Apr 2005 (UTC)


 * Ah, the Great Quux. --Maru (talk) 17:43, 7 October 2005 (UTC)

BAADFOOD?
Can stuff like BAADFOOD and other Hexspeak be considered a Metasyntactic number? If so add something like this:

BAADF00D
As represented in hexadecimal, BAADF00D is one of the comonly used numbers of Hexspeak. It is used to initialize integer variables with a value easy to recognize as trash in computer memory dumps.

0xdeadbeef is also sometimes used for the same purpose. Also not just to initialize individual integer variables, but to initialize allocated memory areas.

Pascal
The way I learned Pascal, i and n are standard metasyntactive variable names for integers/counters, and p, q, r are standard variable names for floating point variables. And c for chars/strings. Do they belong in this article? --till we &#9788; &#9789; | Talk 20:40, 13 Dec 2004 (UTC)


 * The article name does include "meta-syntactic", suggesting "no". --Noel (talk) 19:58, 7 Jan 2005 (UTC)


 * I think there's an excellent case for adding 'i' as the metasyntactic loop-counter variable. --203.52.130.138 06:23, 1 Apr 2005 (UTC)


 * I thought the canonical way to use counters was "i", "j", etc. --Cuervo 11:26, 29 Apr 2005 (UTC)


 * It sounds like "i", "j", etc., are (canonical) loop-counting variables rather than metasyntactic variables. The implication of the latter term is that foo, bar, etc. are for talking about the program (and its variables), rather than for use in the program.


 * I believe that i, j, k, l, m, n were variables that were used because they were implicitly integer (as opposed to floating) in early FORTRAN compilers (and perhaps current ones too; who knows?).

Fish and Wibble
At Swansea University, the first two are almost always Fish and Wibble. e.g. SELECT count(fish) FROM wibble WHERE foo=bar is this in use elsewhere?


 * I've heard of wibble. Fish is a new one on me, though. --Cuervo 11:26, 29 Apr 2005 (UTC)

---

The article says that the word "wibble" was used in an episode of Blackadder Goes Forth in 1989. Is this accurate? I remember Edmund Blackadder using it in another Blackadder series, Blackadder II, in a poem recited to a female. It was a poem about a pleasant summer's night, and the line went something like, "And the frogs go [pause] wibble." Perhaps it was reused in Blackadder Goes Forth, but I don't recall that. --Leon Robbins 08:16, 27 Aug 2006 (UTC)

I seem to recall that in Blackadder Goes Forth, there is an episode in which he pretends to go mad to get out of duty, and he says "wibble" at some point in the episode. My fantastically academic two cents. --Islomaniac 973 20:17, 16 January 2007 (UTC)

Metasyntactic values
maybe this, or other article, should discuss the relevance of the general (foo) values. i usually write foo = "bar" mysell.

Portuguese Language, Common Values:
Usually "zé ninguém" stands for john doe (no-one, annonym) Zé Silva is probably the most common name, so it can also be used as the someone entity. Maria is, obviously, his wife.

Also, "bla bla bla" stands for any speech or description.

Common sentences
The quick brown fox jumps over the lazy dog (and its brilliant variant "the quick young programmer jumped over the lazy old analist) Hello World should definately be linked from this page!


 * And don't forget Lorem Ipsum. --Tinctorius 14:35, 13 December 2005 (UTC)

I remember an old one for Microsoft fonts, "Jackdaws love my big sphinx of quartz". Makes no sense, though. 00:44, 14 January 2007 (UTC)

Origin of the term FooBar
Origin of the term Foo and Bar (as explained in the hackers bible):

The original term was coined in WW2 by British aeronautical engineers to describe bombers which had suffered so much damage that they would never fly again. Such aircraft were described as ‘FUBAR’ (F**ked up beyond all recognition).

Then we cut forward to MIT during the very early days of computing. Before MIT had it’s own computers, it was famous for its model railway club. This club had two distinct types of members, the modellers who created the scenery, and the technical group, who created a sophisticated control system from telephone exchange relays.

This control system was capable of running a simulation of the train system that was not necessarily real-time, and a hexadecimal display on the wall showed the current time in ‘model train world’. Because this system was being constantly changed and extended, things often went wrong. To help prevent damage to the trains and scenery, large red emergency buttons were spread around the track, so that anyone who saw a potential collision could hit one of these buttons and bring the trains to an immediate halt.

As a side-effect of how the logic was wired, when the simulation was stopped in such a manner the clock on the wall would show the hexadecimal number ‘F00’, and the term ‘foobar’ was gradually adopted by this group (as a variation on the original ‘fubar’) to describe technical glitches.

The terms reached a larger audience when Kernigan, Ritchie, Pike etc. (all previous members of the model railway club) designed and created the C programming language and the UNIX operating system, and used ‘foo’ and ‘bar’ throughout their documentation as variable names.

Alice and Bob; merge or make new category?
Alice and Bob, who are mentioned in this article, already have their own page as being the two most prominent characters in scenarios, often related to (secure) communication. Shouldn't it be a good idea to either merge the Alice and Bob-article with this article or make a new category for placeholder texts, placeholder characters and metasyntactic variables? --Tinctorius 14:35, 13 December 2005 (UTC)


 * 'Alice' and 'Bob' don't sound like true metasyntaxvars. A true metasyntaxvar is like a placeholder for another name, which means that the truly true metasyntaxvars foo and bar can come in any order, and fill any role, varname, funcname, classname, etc.. 'Alice' and 'Bob' are bound to be the primary communicators, 'Eve' and 'Oscar' are bound to be evil evesdroppers, so 'Alice' isn't truly interchangable with 'Eve'. That means: It's a very good idea to make another article for Alice and Bob, &#x2013; they're more like variables that can be interchanged for true individuals, not metasyntactical variables. Rursus 16:42, 20 December 2006 (UTC)

Origin of number 23
I noticed that all of the Metasyntactic numbers had some sort of description of origin, except for 23. Isn't 23 just used because it is the common TCP port number for the Telnet service? (See: List of well-known ports (computing)) --Tinctorius 15:04, 13 December 2005 (UTC)


 * It could come from Discordianism. --Maru (talk) Contribs 16:12, 13 December 2005 (UTC)


 * That may even make more sense, since 23 is a magical number in that perspective, like 42 is a somehow 'magical' number in The Hitchhiker's Guide To The Galaxy. --Tinctorius 20:24, 15 December 2005 (UTC)

Other languages
Should we add this under other languages?
 * egg, spam - from Python (influenced by Spam (Monty Python))


 * oh, I didn't see there is allready an entry under "English Words": Spam and Eggs

Boo or Quux?
From the article:

Boo, the canonical fourth metasyntactic variable, is commonly used after foo, bar, and baz.

...

Quux, introduced by Guy L. Steele, Jr., is the canonical fourth metasyntactic variable, commonly used after baz.

Well, which is it? Either one of them should be chosen as the canonical fourth variable, or both instances should be changed to read "a commonly used fourth metasyntactic variable" or some such.

Chrismith 22:17, 4 March 2006 (UTC)


 * I've never heard of "boo" in my life, and I've been programming computers since Hollerith! What's up with this "boo" nonsense? -Ben 21:03, 13 March 2006 (UTC)


 * Hollerith Rursus 16:32, 20 December 2006 (UTC)


 * Seriously, I removed "boo", as it had been added by an anonymous user with no contribution history three months ago, with no attribution. -Ben 21:28, 13 March 2006 (UTC)


 * GLS's book mentioned interaction of quux with latin text, if I recall. Also, isn't Wassamatta U part of Rocky and Bullwinkle?

Canonical
Saying that "foo" is canonical is misleading in my opinion. It seems to indicate that it has been formally standardized in some way.


 * How about "Traditional"? --maru  (talk)  contribs 19:21, 23 April 2006 (UTC)


 * How about noting that the sense in which the word is intended can be determined by reading the linked definition? 202.27.216.35 10:14, 28 April 2007 (UTC)

Examples??
Where are the examples of usage of metasyntactic variables? This article seems more of a list of commonly used metasyntactic variable names. Can't we actually have something using foo, bar and baz in context, rather than long-winded explanations of the etymology of all these names? Surely, for a good portion of the programming/hacker related ones at least, we can simply link to somewhere useful like the jargon file, or some other list? I would like to see an example like (but simpler than) this:
 * "Consider a class hierarchy, where class foo is the child of class bar, and a function, f, has type
 * baz f (bar x)
 * Polymophism allows that if y is of type foo, then f(y) is type-correct."

Yes. A little long-winded, maybe needs to be more "meta". But something like that. Tez 09:25, 5 July 2006 (UTC)

Podunk
There is a mention of Podunk University in the metasyntactic places list. I hear much more reference of podunk to describe a small town, similar to the usage of West Bumfuck. There's also a bit of history having to do with Ulysses, New York horse dreamer 21:40, 30 August 2006 (UTC)

asdf
Surely asdf has earned its place as a metasyntactic variable?
 * Definitely. And it has many other uses as well. You might also want to see the article asdf. 00:50, 14 January 2007 (UTC)

IPA pronunciation
I've added an IPA pronunciation key, could someone who actually knows what they're doing check if it's correct? :-) -Shai-kun 07:08, 14 January 2007 (UTC)

Other metasyntactic variables...
The name I always heard growing up was Mr/Mrs McGillicutty. Have others heard that used?

What about more common things like "such and such", "so and so", "thus and such", "this and that", etc.? Even though these are composed of regular English words, can't they be considered metasyntactic variables if they're used as such?4.252.7.249 06:37, 18 January 2007 (UTC) - Kurt

Bobruisk
Caution, fellows. In contrast to Muchosransk, Bobruisk is actually an existing town in Belarus. It was popularized by a russian internet meme, but it's not fictional. And AFAIK it's not used to refer some generic town. --88.68.51.208 01:33, 4 February 2007 (UTC) // ru:User:Oal

The "big four"...
Why is there no mention of foo, bar, baz, garply? In the haste to catalog all the "others"... did someone manage to delete the canonical first four? --Concerned Citizen —The preceding unsigned comment was added by 69.12.157.118 (talk) 23:44, 7 February 2007 (UTC).

Foo, bar, and baz were, for some reason, deleted on Jan 23, 2007 by anon 204.174.59.127. I have restored them to the page. Viltris 22:34, 27 March 2007 (UTC)

quux
The quux section is gibberish. I can't even understand it, so I cannnot fix it.Thaddeus Slamp 19:29, 10 April 2007 (UTC)

Article needs additional references
After reading the sentence "The number 23 is also commonly used as an integer example—particularly when the connotations associated with 42 are undesirable." I discovered that not only this sentence, but most of the article cannot be verified by references. – Ilse@ 13:06, 2 September 2007 (UTC)

Header Merger
A metasyntactic variable is a placeholder name, or an alias term, commonly used to denote the subject matter under discussion, or a random member of a class of things under discussion. The term originates from computer programming and other technical contexts, and is commonly used in examples by hackers and programmers. The use of a metasyntactic variable is helpful in freeing a programmer from creating a logically named variable, although the invented term may also become sufficiently popular and enter the language as a neologism. The word foo is the canonical example.

A metasyntactic variable (IPA pronunciation: [ˈmɛ.tə.sɪn.ˌtæk.tɪk ˈvɛ.ɹi.ə.bl]) is a placeholder name used in syntax or algorithm specifications to show the places where content can vary.

The same concept is employed in other fields where it is expressed by terms such as schematic variable (see logical form).

However, it has been plausibly suggested that the real reason for the term metasyntactic variable is that it sounds cool: the term is an example of computer jargon.

Shouldn't that be merged? 142.165.9.93 05:33, 11 October 2007 (UTC)