it-swarm-es.com

¿Cuál es el origen de foo y bar?

Posible duplicado:
sando "Foo" y "Bar" en los ejemplos

Sé que los laboratorios de AT&T los usaron en sus días de Unix, pero ¿tienen historias aún más profundas?

24
Phillip Ngan

Del archivo de jerga :

Cuando se usa "foo" en relación con "bar", generalmente se remonta al acrónimo del argot del ejército de la Segunda Guerra Mundial FUBAR ("Fucked Up Beyond All Repair" o "Fucked Up Beyond All Recognition"), que luego se modificó a foobar. Las primeras versiones del archivo Jargon interpretaron este cambio como una bowdlerización de posguerra, pero ahora parece más probable que FUBAR fuera en sí mismo un derivado de 'foo' tal vez influenciado por el furchtbar alemán (terrible) - 'foobar' en realidad puede haber sido el forma original.

Porque, al parecer, la palabra "foo" en sí tenía una historia inmediata de antes de la guerra en historietas y dibujos animados. Los primeros usos documentados se encontraban en la tira cómica Smokey Stover publicada entre 1930 y 1952. Bill Holman, el autor de la tira, la llenó de bromas extrañas y artilugios personales, incluidas otras frases sin sentido como "Notary Sojac" y "1506 nix nix ". La palabra "foo" aparecía con frecuencia en las placas de los automóviles, en frases sin sentido en el fondo de algunos cuadros (como "El que engaña al último foos mejor" o "Muchos fuman pero los hombres mastican"), y Holman hizo que Smokey dijera " Donde hay foo, hay fuego ”.

28
user8

tl; dr

  • "Foo" y "bar" como variables metasintácticas fueron popularizadas por MIT y DEC, las primeras referencias están en trabajo en LISP y PDP-1 y Project MAC desde 1964 en adelante.

  • Muchas de estas personas estaban en el Tech Model Railroad Club del MIT, donde encontramos el primer uso documentado de "foo" en los círculos tecnológicos en 1959 (y una variante en 1958).

  • Tanto "foo" como "bar" (e incluso "baz") eran bien conocidos en la cultura popular, especialmente en los cómics de Smokey Stover y Pogo, que habrán sido leídos por muchos miembros de TMRC.

  • Además, parece probable que el FUBAR militar contribuyó a su popularidad.


El uso del "foo" solitario como una palabra sin sentido está bastante bien documentado en la cultura popular a principios del siglo XX, al igual que el FUBAR militar. (Algunas lecturas de fondo: FOLDOC FOLDOC archivo de jergaarchivo de jergaWikipediaRFC3092 )


Bien, entonces encontremos algunas referencias.

¡DETENGA LA PRENSA! Después de publicar esta respuesta, descubrí este artículo perfecto sobre "foo" el viernes 14 de enero 1938 edición de The Tech ("El periódico más grande y antiguo del MIT y el primer periódico publicado en la web"), Volumen LVII. No. 57, precio tres centavos:

Sobre el foo-ismo

The Lounger cree que este asunto del foo-ismo ha sido llevado demasiado lejos por sus defensores equivocados, y por el presente toma su posición contra su abuso. Puede ser que no haya un foo como un viejo foo, y nosotros lo somos, pero de todos modos, un foo y su dinero son una fiesta. (Voz de las gradas: "¡No seas tonto!")

Como improperio, por supuesto, "foo!" tiene una posición definida y probablemente insustituible en nuestro idioma, aunque tememos que el uso excesivo al que está sometido actualmente puede resultar en un olvido temprano (y, por desgracia, oscuro). Decimos desgraciadamente porque el uso adecuado de la Palabra puede dar lugar a incidentes tan felices como los siguientes.

Fue una conferencia de termodinámica de 8.50 del profesor Slater en la sala 6-120. El profesor, habiendo cubierto el frente de la pizarra, colocó la manija que opera el mecanismo de elevación y, mientras tanto, se dirigió a la clase para continuar su discusión. El tablero frontal lentamente, majestuosamente, se levantó, revelando el tablero detrás de él, y en ese tablero, escribe en grande, los símbolos que deletreaban "FOO".

The Tech journal , un año antes, la Carta al Editor, septiembre 1937 :

Cuando el tren llega a la estación, los neófitos están tan llenos de historias de la gloria de Phi Omicron Omicron, generalmente conocido como Foo, que son presa fácil.

...

No es que me importe haber perdido a mis primeros cuatro hijos en la Gran Hermandad Universal de Phi Omicron Omicron, pero deseo que mi quinto hijo, mi bebé, al menos sea advertido por adelantado.

Espero que sea tuyo

Madre indignada de cinco.

Y The Tech en diciembre 1938 :

La tendencia general de pensamiento podría interpretarse mejor a partir de los comentarios realizados al final de las papeletas. Un voto dijo: "No creo que lo que haga sea asunto de Pulver", mientras que otro simplemente agregó un breve "Foo".


El primer "foo" documentado en los círculos tecnológicos es probablemente 1959 's Diccionario del lenguaje TMRC :

FOO: la sílaba sagrada (FOO MANI PADME HUM); ser hablado solo cuando esté inspirado para comunicarse con la Deidad. Nuestra primera obligación es mantener los Foo Counters funcionando.

Estos se explican en FOLDOC . El compilador del diccionario Pete Samson dijo en 2005:

El uso de esta Palabra en TMRC es anterior a mi llegada allí. Un contador foo podría simplemente tener luces intermitentes al azar, o podría ser un contador real con una entrada oscura.

Y desde 1996 Jargon File 4.0. :

Las versiones anteriores de este léxico derivaron 'baz' como una corrupción de barra de Stanford. Sin embargo, Pete Samson (compilador del Léxico TMRC) informa que ya estaba vigente cuando se unió a TMRC en 1958. Él dice "Provenía de" Pogo ". Albert the Alligator, molesto o indignado, gritaba '¡Bazz Fazz!' o 'Rowrbazzle!' Se dijo que el diseño del club modelaba los condados (míticos) de Nueva Inglaterra de Rowrfolk y Bassex (Rowrbazzle se mezcló con (Norfolk/Suffolk/Middlesex/Essex) ".

Un año antes del diccionario TMRC, 1958 's MIT Voo Doo Gazette ("Suplemento de humor del MIT Oficina del decano ") (PDF) menciona Foocom, en" Las leyes de Murphy y Finagle "de John Banzhaf (un estudiante de ingeniería eléctrica):

La investigación adicional bajo una subvención conjunta de Foocom y Anarcom amplió la ley para que fuera global y aplicable universalmente: si algo puede salir mal, ¡lo hará!

Además 1964 's MIT Voo Doo (PDF) hace referencia al uso de TMRC:

¡Si! Quiero ser un éxito instantáneo y clientes de nieve. Envíame un título en: ...

  • Foo Counters

  • Foo Jung


Busquemos "foo", "bar" y "foobar" publicados en ejemplos de código.

Entonces, Jargon File 4.4.7 dice de "foobar":

Probablemente originalmente propagado a través de los manuales del sistema DEC por Digital Equipment Corporation (DEC) en los años sesenta y principios de los setenta; avistamientos confirmados allí se remontan a 1972.

La primera referencia publicada que puedo encontrar es de febrero 1964 , pero escrita en junio de 1963, El lenguaje de programación LISP: su funcionamiento y aplicaciones por Information International, Inc., con muchos autores, pero incluidos Timothy P. Hart y Michael Levin:

Por lo tanto, como "FOO" es un nombre en sí mismo, "COMITRIN" tratará tanto a "FOO" como a "(FOO)" exactamente de la misma manera.

También incluye otras variables metasintácticas, tales como: FOO CROCK GLITCH/POOT TOOR/ON YOU/SNAP CRACKLE POP/X Y Z

Espero que esto sea muy similar a esta próxima referencia de "foo" del Proyecto MAC del MIT en enero 1964 's AIM-064, o Ejercicios LISP por Timothy P. Hart y Michael Levin:

coche [((FOO. CROCK). GLITCH)]

Comparte muchas otras variables metasintácticas como: CHI/BOSTON NEW YORK/SPINACH BUTTER STEAK/FOO CROCK GLITCH/POOT TOOP/TOOT TOOT/ISTHISATRIVIALEXCERCISE/PLOOP FLOT TOP/SNAP CRACKLE POP/ONE TWO THREE/PLANO SUB-UMBRAL

Para ambos "foo" y "bar" juntos, la referencia más temprana que pude encontrar es del Proyecto MAC del MIT en junio 1966 's AIM-098, o PDP-6 LISP por nada menos que Peter Samson:

EXPLODE, al igual que PRIN1, inserta barras, así que (EXPLODE (QUOTE FOO/BAR)) PRIN1 como (F O O ///B A R) o PRINC como (F O O/B A R).


Algunas más recordaciones.

@ Walter Mitty recordado en este sitio en 2008:

Secundo el archivo de la jerga con respecto a Foo Bar. Puedo rastrearlo al menos hasta 1963, y el número de serie PDP-1 2, que estaba en el segundo piso del Edificio 26 en el MIT. Allí se utilizaron Foo y Foo Bar, y después de 1964 en la sala PDP-6 del proyecto MAC.

John V. Everett recuerda en 1996:

Cuando me uní a DEC en 1966, foobar ya se usaba comúnmente como un nombre de archivo desechable. Creo que fubar se convirtió en foobar porque el PDP-6 admitía seis nombres de caracteres, aunque siempre asumí que el término migraba a DEC desde el MIT. Hubo muchos tipos MIT en DEC en esos días, algunos de los cuales habían trabajado con el 7090/7094 CTSS. Dado que el 709x también era una máquina de 36 bits, el foobar puede haber sido usado como un común nombre de archivo allí.

Foo y bar también se usaban comúnmente como extensiones de archivo. Dado que los editores de texto de la época operaban en un archivo de entrada y producían un archivo de salida, era común editar de un archivo .foo a un archivo .bar, y viceversa.

También era común usar foo para llenar un búfer al editar con TECO. La cadena de texto para llenar exactamente un bloque de disco fue IFOO $ HXA127GA $$. Casi todos los programadores PDP-6/10 con los que trabajé usaron esta misma cadena de comando.

Daniel P. B. Smith en 1998:

Dick Gruen tenía un dispositivo en su dormitorio, el conjunto habitual de baterías B, resistencias, condensadores y tubos de neón NE-2, que llamó un "contador de foo". Esto habría sido alrededor de 1964 más o menos.

Robert Schuldenfrei en 1996:

El uso de FOO y BAR como nombres de variables de ejemplo se remonta al menos a 1964 y al IBM 7070. Esto también puede ser más antiguo, pero ahí es donde lo vi por primera vez. Esto fue en ensamblador. ¿Cuál sería el equivalente entero FORTRAN? ¿IFOO e IBAR?

Paul M. Wexelblat en 1992:

El primer ensamblador PDP-1 usó dos caracteres para los programadores de símbolos (máquina de 18 bits) que siempre dejaban algunas palabras como espacio de parche para solucionar los problemas. (Salta al espacio de parche, haz un nuevo código, salta hacia atrás) Ese espacio convencionalmente se llamaba FU: que significaba Fxxx Up, el lugar donde arreglaste Fxxx Ups. Cuando se hablaba, se conocía como FU espacio. Ensambladores posteriores (por ejemplo, MIDAS permitió tres etiquetas char así que FU se convirtió en FOO, y como TODOS los programadores PDP-1 lo harán) decirte que era espacio FOO.

Bruce B. Reynolds en 1996:

En el lado de IBM de FOO (FU) BAR está el uso del lado de BAR como registro de dirección base; a mediados de la década de 1970, los programadores de CICS tuvieron que preocuparse por los diversos xxxBAR ... Creo que uno de ellos era FRACTBAR ...

Aquí hay una recta IBM "BAR" de 1955.


Otras referencias tempranas:


No he podido encontrar ninguna referencia a foo bar como "señal de foo invertida" como se sugiere en RFC3092 y en otros lugares.

Aquí hay algunos de los F00 anteriores, pero creo que son coincidencias/falsos positivos:

22
Hugo

De Wikipedia :

Los orígenes de los términos no se conocen con certeza, y se han avanzado varias teorías anecdóticas para identificarlos. Foobar puede haber derivado del acrónimo militar FUBAR y haber ganado popularidad debido al hecho de que se pronuncia igual. En este sentido, también puede derivarse de la palabra alemana furchtbar, que significa horrible y terrible y describe las circunstancias de la Segunda Guerra Mundial.

FOO es una abreviatura de Forward Observation Officer, un término del ejército británico en uso ya en la Primera Guerra Mundial. La etimología de foo se explora en la Solicitud de comentarios 3092 del Grupo de trabajo de ingeniería de Internet (IETF), que señala el uso de foo en los dibujos animados de la década de 1930, incluyendo The Daffy Doc (con Daffy Duck) y tiras cómicas, especialmente Smokey Stover y Pogo. A partir de ahí, el término migró a la jerga militar, donde se fusionó con FUBAR.

"Barra" como el segundo término de la serie puede haberse desarrollado en electrónica, donde una señal digital que se considera "encendida" con una condición de voltaje negativo o cero se identifica con una barra horizontal sobre la etiqueta de la señal; la notación para una señal invertida foo se pronunciaría "foo bar".

7
Wizard79