The Full Wiki

Foo: Wikis

  

Note: Many of our articles have direct quotes from sources you can cite, within the Wikipedia article! This article doesn't yet, but we're working on it! See more info or our list of citable articles.

Encyclopedia

(Redirected to Foobar article)

From Wikipedia, the free encyclopedia

The terms foobar, foo, bar, and baz are common placeholder names (also referred to as metasyntactic variables) used in computer programming or computer-related documentation.[1] They are commonly used to represent unknown values, typically when describing a scenario where the purpose of the unknown values is understood, but their precise values are arbitrary and unimportant. The terms can be used to represent any part of a complicated system or idea, including the data, variables, functions, and commands. The words themselves have no meaning in this usage, and are merely logical representations, much like the letters x and y are used in algebra. Foobar is often used alone; foo, bar, and baz are usually used in that order, when multiple entities are needed.

It is used extensively in computer programming examples (sometimes expressed as "for once only") and pseudocode. Eric S. Raymond has called it an "important hackerism" alongside kludge and cruft.[2]

Contents

History

The origins of the terms are not known with certainty, and several anecdotal theories have been advanced to identify them. Foobar may derive from the military acronym FUBAR, or it may have gained popularity due to the fact that it is pronounced the same. In this meaning it also can derive from the German word furchtbar, which means awful and terrible and described the circumstances of the Second World War. American soldiers in Germany had problems with the pronunciation of the German word and used it in a simplified form.

FOO is an abbreviation of Forward Observation Officer, a British Army term in use as early as the First World War.[3] The etymology of foo is explored in the Internet Engineering Task Force (IETF) Request for Comments 3092, which notes usage of foo in 1930s cartoons including The Daffy Duck and comic strips, especially Smokey Stover and Pogo. From there the term migrated into military slang, where it merged with FUBAR.[1]

Other origins

The terms may have developed in electronics, where a digital signal which is considered "on" with a negative or zero-voltage condition, is identified with a horizontal bar over the signal label; the notation for an inverted signal foo would then be pronounced "foo bar".

The use of foo in hacker and eventually in programming context may have begun in MIT's Tech Model Railroad Club (TMRC). In the complex model system there were scram switches located at numerous places around the room that could be thrown if something undesirable was about to occur, such as a train going full-bore at an obstruction. Another feature of the system was a digital clock on the dispatch board. When someone hit a scram switch the clock stopped and the display was replaced with the word "FOO"; at TMRC the scram switches are therefore called "Foo switches". Because of this an entry in the 1959 Dictionary of the TMRC Language went something like this: "FOO: The first syllable of the misquoted sacred chant phrase 'foo mane padme hum.' Our first obligation is to keep the foo counters turning."[4]

The term foobar was propagated through computer science circles in the 1960s and early 1970s by system manuals from Digital Equipment Corporation.

Foobar was used as a variable name in the Fortran code of Colossal Cave Adventure (1977 Crowther and Woods version). The variable FOOBAR was used to contain the player's progress in saying the magic phrase "Fee Fie Foe Foo".

Usage in code

The terms are very often used in programming examples, much like the Hello World program is commonly used as an introduction. For example, foo and bar might be used to illustrate a simple string concatenation:

// C/C++ code
#include <stdio.h>
 
int main()
{
   char foo[] = "Hello,";
   char bar[] = "World!";
   printf("%s %s\n", foo, bar);
 
   return 0;
}

Usage in culture

$foo is the name of a Perl programming magazine,[5] and Foo Camp is an annual hacker convention (the name is also a backronym for Friends of O'Reilly, the event's sponsor).

During the United States v. Microsoft trial, some evidence was presented that Microsoft had tried to use the Web Services Interoperability organization as a means to stifle competition, including e-mails in which top executives including Bill Gates referred to the WS-I using the codename "foo".[6]

See also

  • BarCamp, an international network of user generated conferences
  • John Doe, a placeholder name for a male party, in a legal action, case or discussion, whose true identity is either unknown or must be withheld for legal reasons
  • Foo Camp, an annual hacker event hosted by publisher O'Reilly Media
  • FUBAR, a homophonous acronym
  • Lorem ipsum, the name given to commonly used placeholder text
  • Placeholder name

References

External links


Wiktionary

Up to date as of January 15, 2010
(Redirected to foo article)

Definition from Wiktionary, a free dictionary

Contents

English

Pronunciation

Noun

foo

  1. (computing) A metasyntactic variable used to represent an unspecified entity. If part of a series of such entities, it is often the first in the series, and followed immediately by bar.
    Suppose we have two objects, foo and bar.
  2. (slang) Also foo’. Representation of fool (foolish person), in a Mr. T accent.

Derived terms

Related terms

Anagrams

See also








Got something to say? Make a comment.
Your name
Your email address
Message