Kommentarer
- Det ser ut som om ingen av fmsf ' innleggene er trygge for RichB ' s mobbing.
- Ja, han elsker å endre det jeg skriver, jeg ' begynner å tro at han er besatt av det
- " hvorfor foo bar? tittelen er ikke veldig bra, IMHO
- Jeg ' har lagt til et svar med riktig etymologi (det ' er den mest populære av en familie av slanguttrykk for den amerikanske hæren fra 2. verdenskrig) og kilden min.
- Det ' sa meme – en formidlingside . Det er sin egen begrunnelse.
Svar
Foo og bar kommer fra US Army WWII akronym FUBAR, «F-ed Up Beyond All Recognition». En hel familie av disse begrepene ble utbredt under de nordafrikanske og sicilianske kampanjene (1942-43). Rick Atkinson «utmerket Kampens dag: Krigen på Sicilia og Italia, 1943-1944 gir en liste over disse. For eksempel er en JANFU en» Joint Army » Navy F Up «, slik som hendelsen 11. juli 1943 da invasjonsflåten for Operasjon Husky skutt ned 23 Army Air Force C-47 transporter med fallskjermjegere for å forsterke strandhodet.
Oppdatering: Wikipedia har en liste med relaterte akronymer som inkluderer noen av de originale WWII-ene som er oppført av Atkinson.
Enhver programmerer vil forstå motivasjonen for å bruke foo og bar for å nevne variabler. De absolutt har vært en del av C / UNIX-kulturen fra begynnelsen, og som @Walter Mitty påpeker, predated den.
Oppdatering (10/5/2009): Her er beskrivelsen til Atkinson:
Deres gjennomgripende «medborgerlighet» gjorde dem forsiktige med krigs iver. «Vi var ikke romantikere fylt med kappe-og-sv ord twaddle, «skrev John Mason Brown, en marinereservatløytnant på vei til Sicilia. «Den siste krigen var for nær til det.» Militærlivet betente deres ironiske følelser og skepsis. Et enkelt grovt akronym som fanget soldatens «senket forventninger – SNAFU,» situasjonen normal, alt oppslukt «- hadde utvidet seg til et ordforråd av GI-kynisme: SUSFU (situasjonen uendret, fremdeles knullet); FUMTU (knullet mer enn vanlig); JANFU (joint Army-Navy fuck-up); JAAFU (joint Anglo-American fuck-up); FUAFUP (fucked up and fucked up proper); og FUBAR (fucked up over all recognition) [Atkinson, s. 36].
Oppdatering (11/23/2011): @Hugo har en fantastisk liste av ikke-militære fortilfeller.
Kommentarer
- For å legge til etymologien: " FUBAR kan ha blitt påvirket av det tyske ordet furchtbar, som betyr forferdelig. Det uttales med en myk cht, og gjorde sannsynligvis overgangen under andre verdenskrig "
- @Mark, den tyske Wikipedia (de.wikipedia.org/wiki/Fubar), antyder at dette kan være en pseudoetymologi. Det peker også på anteceden ts som " STILHET ER FOO " logg på Warner Brother ' 1938-tegneserie " Daffy Doc ".
- @Jim Ferrans: Mens FUBAR sannsynligvis påvirket bruken av " bar " med " foo ", det er sterkt bevis for at " foo " i seg selv godt forut for andre verdenskrig, med referanser i det minste tilbake til 1930-tallet, som kommentaren din indikerer. Det kan være greit å nevne det i hoveddelen av svaret ditt.
- Ja, foo definitivt forut for andre verdenskrig. Faktisk fant jeg ' et MIT-avisstykke fra 1938 som forteller oss hvor vanlig det var: " Som en utforskende, selvfølgelig , " foo!" har en klar og sannsynligvis uerstattelig posisjon i språket vårt, selv om vi frykter at den overdrevne bruken den for øyeblikket utsettes for, kan føre til at den faller inn i en tidlig (og akk en mørk glemsel. " Se svaret mitt for mer og en referanse fra 1937 i samme avis: programmers.stackexchange.com/questions / 69788 / …
Svar
Jeg tror det er den fonetiske uttalelsen av fubar.
Som står for:
- F * cked
- Up
- Utover
- Alle
- Reparasjoner
Kommentarer
- Reparasjon eller anerkjennelse; P
- " Fouled " brukes ofte når du trenger å være høflig.
- reparasjon? nah .. anerkjennelse
- Det ' s " anerkjennelse ". Se sitat fra Rick Atkinson ' s kampdag her: stackoverflow.com/questions/262271/…
- Bare merk at ' er sterke bevis (se RFC 3092, sjargongfilen og andre svar her) som " foo " ble brukt som et stedholder tullord på 1930-tallet, i god tid før FUBAR kom inn i militær slang i andre verdenskrig.
Svar
New Hackers Dictionary har en veldig god oppføring om dette – og jeg anser det for å være en bedre ressurs for denne typen ting enn Wikipedia:
metasyntaktisk variabel /n./
Et navn som er brukt i eksempler og forstått å stå for hva som helst som er under diskusjon, eller ethvert tilfeldig medlem av en klasse med ting som diskuteres. Ordet foo er det kanoniske eksemplet. For å unngå forvirring bruker hackere aldri (vel, nesten aldri) «foo» eller andre ord som det som permanente navn for noe. I filnavn er en vanlig konvensjon at ethvert filnavn som begynner med et metasyntaktisk variabelnavn er en skrapefil som kan slettes når som helst.
Til en viss grad er listen over foretrukne metasyntaktiske variabler en kulturell signatur. De forekommer både i serier (brukes til relaterte grupper av variabler eller objekter) og som singler. Her er noen vanlige signaturer:
foo, bar, baz, quux, quuux, quuuux …:
MIT / Stanford-bruk, nå funnet overalt (stort sett takket være tidlige versjoner av dette leksikonet! ). På MIT (men ikke på Stanford) falt baz ut av bruk en stund på 1970- og 80-tallet. En vanlig nylig mutasjon av denne sekvensen setter inn qux før quux.bazola, ztesch:
Stanford (fra midten av «70-tallet og fremover).foo, bar, thud, grunt:
Denne serien var populær på CMU. Andre CMU-relaterte variabler inkluderer gorp.foo, bar, fum:
Denne serien rapporteres å være vanlig på XEROX PARC.fred, barney:
Se oppføringen for fred. Disse pleier å være britismer.corge, grault, flarp:
Populær ved Rutgers University og blant GOSMACS-hackere.zxc, spqr, wombat:
Cambridge University (England).shme
Berkeley, GeoWorks, Ingres. Uttalt / shme / med en kort / e /.snorkling
Brown University, tidlig på 1970-tallet.foo, bar, zot
Helsinki University of Technology, Finland.blarg, wibble
New Zealand.toto, titi, tata, tutu
Frankrike.pippo, pluto, paperino
Italia. Pippo / tiss «po / og Paperino / pa-per-ee» -no / er de italienske navnene på Goofy og Donald Duck.aap, noot, mies
Nederland. Dette er de første ordene et barn brukte til å lære å stave på et nederlandsk stavebrett.Av alle disse er bare «foo» og «bar» universelle (og baz nesten så). Forbindelsene foobar og `foobaz» har også veldig bred valuta.
Noen sjargongtermer brukes også som metasyntaktiske navn; for eksempel barf og mumling. Se også Commonwealth Hackish for diskusjon av mange metasyntaktiske variabler som finnes i Great Storbritannia og Commonwealth.
Kommentarer
- Må si, jeg ' m fra NZ og jeg ' har aldri hørt om ' blarg ' ELLER ' wibble '.
- Det var en ganske bra. Det ' er forseggjort. Takk fyr.
- OMG, QL-kontoen min er qux. Sjokkert …
- @Colin – Jeg endret lenken til et annet nettsted, siden den eksisterende var frakoblet.
- Jeg fant noen andre interessante metasyntaktiske variabler fra et MIT 1964-papir om LISP (som selvfølgelig også hadde foo): chi / boston new york / spinat butter biff / foo croc k glitch / poot toop / toot toot / isthisatrivialexercicise / ploop flot top / snap crackle pop / one two three / plane sub thrherher.Se svaret mitt for mer info: programmers.stackexchange.com/questions/69788/…
Svar
Wikipedia gir denne definisjonen av Metasyntactic Variable :
I informatikk bruker programmerere metasyntaktiske variabler for å beskrive et plassholdernavn eller et aliasbegrep som ofte brukes til å betegne emnet som diskuteres eller et vilkårlig medlem av en klasse med ting som diskuteres. Bruken av en metasyntaktisk variabel er nyttig for å frigjøre en programmerer fra å lage en logisk navngitt variabel, noe som ofte er nyttig når du oppretter eller underviser eksempler på en algoritme. Ordet foo er det viktigste eksemplet.
Begrepet «metasyntaktisk variabel» finnes primært i uformell litteratur. Noen ganger brukes det også som et synonym for metavariable.
Ethvert symbol eller ord som ikke bryter med reglene i språket, kan brukes som en metasyntaktisk variabel, men tullord blir ofte brukt. Det samme konseptet brukes i andre felt der det uttrykkes ved begreper som skjematisk variabel (se logisk form ).
Av matematisk analogi: En metasyntaktisk variabel er et ord som er en variabel for andre ord, akkurat som i algebra bokstaver brukes som variabler for tall.
Artikkelen gir også vanlige eksempler på variabler i forskjellige programmeringsspråk:
C
I det følgende eksemplet på C-programmeringsspråket er funksjonsnavnet foo og variabelnavnlinjen begge metasyntaktiske variabler. Linjer som begynner med // er kommentarer.
// The function named foo int foo(void) { // Declare the variable bar and set the value to 1 int bar = 1; return bar; }
Python
Spam, skinke og egg er de viktigste metasyntaktiske variablene som brukes i Python-programmeringsspråket . [5] Dette er en referanse til den berømte komediskissen, Spam, av Monty Python, språkets eponym. [6] I det følgende eksemplet er nettsøppel, skinke og egg metasyntaktiske variabler og linjer som begynner med # er kommentarer.
# Define a function named spam def spam(): # define the variable ham ham = "Hello World!" #define the variable eggs eggs = 1 return
Ruby
I det følgende eksemplet baz, foo og bar er metasyntaktiske variabler og linjer som begynner med # er kommentarer.
# Declare the variable foo and set equal to 1 foo = 1 # Declare the variable bar and set equal to 2 bar = 2 # Declare the method (function) named baz, which prints the text "Hello world" def baz puts "Hello world" end
Svar
Her er wikipedia sitt svar:
Begrepene foobar, foo , bar og baz, er vanlige plassholdernavn (også referert til som metasyntaktiske variabler) som brukes i dataprogrammering eller datamaskinrelatert dokumentasjon. De brukes ofte til å representere ukjente verdier, vanligvis når man beskriver et scenario der formålet med de ukjente verdiene er forstått, men deres presise verdier er vilkårlige og uviktige. Begrepene kan brukes til å representere en hvilken som helst del av en komplisert syst em eller idé, inkludert data, variabler, funksjoner og kommandoer. Ordene i seg selv har ingen betydning i denne bruken, og er bare logiske representasjoner, omtrent som bokstavene x og y brukes i algebra. Foobar brukes ofte alene; foo, bar og baz brukes vanligvis i den rekkefølgen, når det er behov for flere enheter.
Foo har angitt det engelske språket som en neologisme og anses av mange for å være det kanoniske eksempelet på en metasyntaktisk variabel. [sitering nødvendig] Den brukes mye i eksempler på dataprogrammering (noen ganger uttrykt som «bare en gang») og pseudokode. Eric S. Raymond har kalt det en «viktig hackerisme» sammen med kludge og cruft. [1]
http://en.wikipedia.org/wiki/Foo
Og fra RFC 3092:
Når det brukes i forbindelse med «bar» spores det generelt til WW2-epoken Army slang akronym FUBAR («Fucked Up Beyond All Repair»), senere modifisert til foobar. Tidlige versjoner av Jargon File [JARGON] tolket denne endringen som en etterkrigsdumping, men det virker nå mer sannsynlig at FUBAR selv var et derivat av «foo», kanskje påvirket av tysk «furchtbar» (forferdelig) – «foobar» kan faktisk har vært den opprinnelige formen.
For det ser ut til at ordet «foo» i seg selv hadde en umiddelbar førkrigshistorie i tegneserier og tegneserier. I Warner Brothers-tegneserien fra 1938 regissert av Robert Clampett, «The Daffy Doc», holder en veldig tidlig versjon av Daffy Duck et skilt som sier «SILENCE IS FOO!» …(snip)
http://www.faqs.org/rfcs/rfc3092.html
Kommentarer
- eller du kan bare innrømme at det kommer fra fubar = ' " f " utover all anerkjennelse '
- @Jonathan Fingland: Nei det gjør det ikke ' t. (Faktisk er " foo " sannsynligvis forut for begge " foobar " og " FUBAR ".) Se RFC 3092 og oppføringen Jargon File for " foo ".
- @Daniel, utmerket referanse. Lagt til
Svar
tl; dr
-
«Foo «og» bar «som metasyntaktiske variabler ble popularisert av MIT og DEC, de første referansene er i arbeid på LISP og PDP-1 og Project MAC fra og med 1964.
-
Mange av disse menneskene var i MITs Tech Model Railroad Club, hvor vi finner den første dokumenterte bruken av «foo» i teknologikretser i 1959 (og en variant i 1958
-
Både «foo» og «bar» (og til og med «baz») var godt kjent i populærkulturen, spesielt fra tegneserier fra Smokey Stover og Pogo, som vil ha vært lest av mange TMRC-medlemmer.
-
Det virker også som om det militære FUBAR har bidratt til deres popularitet.
Bruken av ensom «foo» som et tullord er ganske godt dokumentert i populærkulturen tidlig på 1900-tallet, og det samme er militæret FUBAR. (Noe bakgrunnslesning: FOLDOC FOLDOC Jargongfil Sjargongfil Wikipedia RFC3092 )
OK, så la oss finne noen referanser.
STOPP TRYK! Etter å ha postet dette svaret, oppdaget jeg denne perfekte artikkelen om «foo» fredag 14. januar 1938 utgave av The Tech («MIT» s eldste og største avis & den første avisen publisert på nettet «), bind LVII. Nr. 57, pris tre cent:
På Foo-ism
The Lounger mener at denne virksomheten til Foo-ism har vært ført for langt av sine villfarne talsmenn, og tar herved og straks sin stand mot misbruket. Det kan være at det ikke er noen foo som en gammel foo, og vi er det, men uansett, en foo og pengene hans er noe parti. (Stemme fra blekerne – «Ikke vær følsom!»)
Som en utforskende har selvfølgelig «foo!» En bestemt og sannsynligvis uerstattelig posisjon i vårt språk, selv om vi frykter at overdreven bruk som den for øyeblikket utsettes for, kan godt føre til at den faller inn i en tidlig (og, akk, en mørk) glemsel. Vi sier akk, fordi riktig bruk av ordet kan resultere i slike lykkelige hendelser som følgende.
Det var en forelesning på 8.50 termodynamikk av professor Slater i rom 6-120. Professoren, som hadde dekket forsiden av tavlen, satte håndtaket som betjener løftemekanismen og vendte seg i mellomtiden til klassen for å fortsette diskusjonen. Frontbrettet løftet seg sakte, majestetisk, og avslørte brettet bak det, og skrev stort på symbolene som stavet «FOO»!
Tech-avisen , et år tidligere, Brevet til redaktøren, september 1937 :
Da toget har nådd stasjonen, er neofyttene så fylt med historiene om Phi Omicron Omicrons herlighet, vanligvis referert til som Foo , at de er lett byttedyr.
…
Det er ikke slik at jeg har noe imot å ha mistet mine fire første sønner til det store og universelle brorskapet til Phi Omicron Omicron, men det gjør jeg skulle ønske at min femte sønn, babyen min, i det minste skulle bli advart på forhånd.
Forhåpentligvis din,
Indignert Fememor.
Og The Tech i desember 1938 :
Generell tanketendens kan tolkes best ut fra kommentarene som ble gjort på slutten av stemmeseddelen. Én stemme sa, «» Jeg tror ikke det jeg gjør er noe av Pulvers virksomhet, «mens en annen bare la til en kort» Foo. «
Den første dokumenterte «foo» i teknologikretser er sannsynligvis 1959 «s Ordbok for TMRC-språket :
FOO: den hellige stavelsen (FOO MANI PADME HUM); å bli snakket bare når du er inspirert til å kommunisere med guddommen.Vår første forpliktelse er å holde Foo Counters i gang.
Disse blir forklart på FOLDOC . Ordboken «s kompilator Pete Samson sa i 2005:
Bruk av dette ordet på TMRC forgår min komme dit. En foo-teller kunne rett og slett ha tilfeldig blinkende lys , eller kan være en reell teller med en uklar inngang.
Og fra 1996 er s Jargon File 4.0.0 :
Tidligere versjoner av dette leksikonet avledet «baz» som en Stanford-korrupsjon av bar. Imidlertid rapporterer Pete Samson (kompilator av TMRC-leksikonet) at det allerede var aktuelt da han ble med i TMRC i 1958. Han sier «Det kom fra» Pogo «. Albert Alligator ville, når den var plaget eller opprørt, rope» Bazz Fazz! «Eller «Rowrbazzle!» Klubboppsettet sies å modellere (mytiske) New England-fylker Rowrfolk og Bassex (Rowrbazzle blandet med (Norfolk / Suffolk / Middlesex / Essex). «
Et år før TMRC-ordlisten, 1958 «s MIT Voo Doo Gazette (» Humor supplement of the MIT Deans «office») (PDF) nevner Foocom, i «The Laws of Murphy and Finagle» av John Banzhaf (en elektroteknisk student):
Ytterligere undersøkelser under et felles Foocom- og Anarcom-tilskudd utvidet loven til å omfatte alle og gjelde universelt: Hvis noe kan gå galt, vil det!
Også 1964 » s MIT Voo Doo (PDF) refererer til TMRC-bruken:
Ja! Jeg ønsker å bli en øyeblikkelig suksess og snøkunder. Send meg en grad i: …
Foo Counters
Foo Jung
Men la oss huske at dette spørsmålet handler om kodeeksempler, så la «s finne» foo «,» bar «og» foobar «publisert i kode.
Så, Jargon File 4.4.7 sier om «foobar»:
Sannsynligvis opprinnelig spredt gjennom DECsystem manualer av Digital Equipment Corporation (DEC) på 1960- og begynnelsen av 1970-tallet; bekreftede observasjoner der går tilbake til 1972.
Den første publiserte referansen jeg kan finne er fra februar 1964 , men skrevet i juni 1963, Programmeringsspråket LISP: dets drift og applikasjoner av Information International, Inc. , med mange forfattere, men inkludert Timothy P. Hart og Michael Levin:
Siden «FOO» er et navn for seg selv, vil «COMITRIN» behandle både «FOO» og «(FOO)» på nøyaktig samme måte.
Inkluderer også andre metasyntaktiske variabler som: FOO CROCK GLITCH / POOT TOOR / PÅ DEG / SNAP CRACKLE POP / XYZ
Jeg forventer at dette er mye det samme som denne neste referansen til «foo» fra MITs Project MAC i januar 1964 «s AIM-064, eller LISP-øvelser av Timothy P. Hart og Michael Levin:
bil [((FOO. CROCK). GLITCH)]
Den deler mange andre metasyntaktiske variabler som: CHI / BOSTON NEW YORK / SPINAT BUTTER STEAK / FOO CROCK GLITCH / POOT TOOP / TOOT TOOT / ISTHISATRIVIALEXCERCISE / PLOOP FLOT TOP / SNAP CRACKLE POP / ONE TWO THREE / PLANE SUB THRESHER
For både «foo» og «bar» sammen, er den tidligste referansen jeg kunne finne fra MITs prosjekt MAC i juni 1966 «s AIM-098, eller PDP-6 LISP av ingen ringere enn Peter Samson:
EXPLODE, som PRIN1, setter skråstreker, så (EXPLODE (QUOTE FOO / BAR)) PRIN1 «s som (FOO // / BAR) eller PRINC «s as (FOO / BAR).
Noen flere tilbakekallinger.
@Walter Mitty tilbakekalt på dette nettstedet i 2008:
Jeg sekunderer sjargongen fil angående Foo Bar. Jeg kan spore det i hvert fall tilbake til 1963, og PDP-1 serienummer 2, som var i andre etasje i bygning 26 på MIT. Foo og Foo Bar ble brukt der, og etter 1964 i PDP-6-rommet på prosjektet MAC.
John V. Everett minnes i 1996:
Da jeg begynte i DEC i 1966, ble foobar allerede ofte brukt som kast- bort filnavn. Jeg tror fubar ble foobar fordi PDP-6 støttet seks tegnnavn, selv om jeg alltid antok at begrepet migrerte til DEC fra MIT. Det var mange MIT-typer på DEC i disse dager, hvorav noen hadde jobbet med 7090/7094 CTSS.Siden 709x også var en 36-bits maskin, kan foobar ha blitt brukt som et vanlig filnavn der.
Foo og bar ble også ofte brukt som filutvidelser. Siden datidens tekstredigerere opererte en inndatafil og produserte en utdatafil, var det vanlig å redigere fra en .foo-fil til en .bar-fil, og tilbake igjen.
Det var også vanlig å bruk foo for å fylle en buffer når du redigerer med TECO. Tekststrengen for å fylle en diskblokk nøyaktig var IFOO $ HXA127GA $$. Nesten alle PDP-6/10-programmererne jeg jobbet med, brukte den samme kommandostrengen.
Daniel PB Smith i 1998:
Dick Gruen hadde et apparat i hybelen, den vanlige monteringen av B-batteri, motstander, kondensatorer og NE-2 neonrør, som han kalte en» foo-teller. » Dette ville ha vært rundt 1964 eller så.
Robert Schuldenfrei i 1996:
Bruken av FOO og BAR som eksempler på variabelnavn går tilbake i det minste til 1964 og IBM 7070. Også dette kan være eldre, men det var der jeg først så det. Dette var i Assembler. Hva ville være FORTRAN heltall? IFOO og IBAR?
Paul M. Wexelblat i 1992:
Den tidligste PDP-1-samleren brukte to tegn til symboler (18-bits maskin) programmerere la alltid noen ord som lappplass for å løse problemer. (Hopp til lappeplass, gjør ny kode, hopp tilbake) Det rommet ble tradisjonelt kalt FU: som sto for Fxxx Up, stedet der du fikset Fxxx Ups. Når det ble snakket, var det kjent som FU-rom. Senere Assemblers (f.eks. MIDAS tillot tre tegn, slik at FU ble FOO, og som ALLE PDP-1 programmerere vil fortelle deg at det var FOO space.
Bruce B. Reynolds i 1996:
På IBM-siden av FOO (FU) BAR er bruken av BAR-siden som Base Address Register; i midten av 1970-årene måtte CICS-programmerere bekymre seg for de forskjellige xxxBARene … Jeg tror en av dem var FRACTBAR …
Her» er rett IBM «BAR» fra 1955.
Andre tidlige referanser:
-
1972 FOO MIT AI
-
1973 foo bar International Joint Council on Artificial Intelligence
-
1975 foo bar International Joint Council on Artificial Intelligence
Jeg har ikke klart å finne noen referanser til foo bar som «invertert foo signal «som foreslått i RFC3092 og andre steder.
Her er noen av enda tidligere F00-er, men jeg tror de er tilfeldigheter / falske positive:
Svar
ved å bruke ord som «foo» og «bar» får deg til å fokusere på konsept ikke på hva du kan forstå ut fra vilkårene du kjenner. For eksempel:
public abstract class Animal { public abstract void speak(); } public class Cat extends Animal { public abstract void speak() { System.out.println("meow"); } } public class Dog extends Animal { public abstract void speak() { System.out.println("bark"); } }
Ovennevnte kode lar deg falle tilbake på din kunnskap om virkelige ting.
Hvis du prøver å forklare et konsept der den viktige delen ikke er det som blir gjort (for eksempel å trykke ut mia eller bjeffe), men hvordan det gjøres, fjern deretter delene du er kjent med:
public abstract class Foo { public abstract void star(); } public class Bar extends Foo { public abstract void star() { System.out.println("A"); } } public class Car extends Foo { public abstract void star() { System.out.println("b"); } }
Nå må du fokusere på det som virkelig skjer, du er ikke lenger i stand til å gjette på hva som skal skje.
Så kortversjonen er at foo, bar og lignende brukes til å understreke begreper der innholdet ikke betyr noe, men ideen gjør det.
Kommentarer
- ah, et ordentlig svar!
- Ja, men hvorfor Foo og Bar spesifikt? Hvorfor ikke Lorum og Ipsum?
- no.wikipedia.org/wiki/Foo kan være nøyaktig …
- @TofuBeer Ja, de ' re " metasyntaktiske variabler ". @masher ser svaret mitt med masse referanser til hvorfor Foo og Bar og ikke Lorem og Ipsum. programmers.stackexchange.com/questions/69788/… Faktisk er det mange forskjellige metasyntaktiske variabler som har blitt brukt opp gjennom årene og på forskjellige steder.
Svar
Fra http://en.wikipedia.org/wiki/Foo bar
Innen teknologi ble ordet antagelig opprinnelig spredt gjennom systemmanualer av Digital Equipment Corporation på 1960- og begynnelsen av 1970-tallet . En annen mulighet er at foobar utviklet seg fra elektronikk, som et omvendt foo-signal. Dette er fordi hvis et digitalt signal er aktivt lavt (slik at en negativ eller null-spenningstilstand representerer et «1») så blir en horisontal stang ofte plassert over signaletiketten. Jargon File gjør en sak som foo muligens går forut for FUBAR
Kommentarer
- dette forklarer ikke hvorfor
- I ' har funnet mange referanser for første " foo " og senere " bar " fra MIT og også DEC (begge i Massachusetts), i arbeidet med LISP og PDP-1 og Project MAC fra og med 1964. Det ' er en fin idé, men jeg kunne ikke ' ikke finne noen referanse til en " invertert foo-signal ". Mer her: programmers.stackexchange.com/questions/69788/…
Svar
Fra sjargongfilene http://www.catb.org/jargon/html/F/foo.html
foo: / foo /
- interj. Avsky.
- [veldig vanlig] Brukes veldig generelt som et eksempelnavn på absolutt hva som helst, spesielt programmer og filer (spesielt skrapefiler).
- Først på standardlisten over metasyntaktiske variabler som brukes i syntakseksempler. Se også bar, baz, qux, quux, garply, waldo, fred, plugh, xyzzy, thud.
bar: / bar /, n.
- [veldig vanlig] Den andre metasyntaktiske variabelen, etter foo og før baz. “Anta at vi har to funksjoner: FOO og BAR. FOO kaller BAR …. ”
- Føyes ofte til foo for å produsere foobar.
Svar
I henhold til http://en.wikipedia.org/wiki/Foo :
Begrepene «opprinnelse er ikke kjent med sikkerhet, og flere anekdotiske teorier er blitt fremskaffet for å identifisere dem. Foobar kan stamme fra det vulgære militære akronymet FUBAR, eller det kan ha blitt populært på grunn av at det uttales samme.
Svar
Jeg sekunderer sjargongfilen angående Foo Bar.
Jeg kan spore det i hvert fall tilbake til 1963, og PDP-1 serienummer 2, som var i andre etasje i bygning 26. MIT. Foo og Foo Bar ble brukt der, og etter 1964 i PDP-6-rom ved prosjekt MAC.
Kommentarer
- +1 for å være vitne til en av de tidligste bruksområdene av Foo Bar 🙂 Hvordan var Foo og Foo Bar faktisk brukt der?
- PS I ' har tatt med sitatet ditt i mitt store svar: programmers.stackexchange.com/questions/69788/…
Svar
Så vidt jeg vet kommer foo fra foobar som er en endring av «fubar», en militær fangstfrase som står for « F *** ed u p b eyond a ll r økning.»
Så igjen, det kan være andre kilder.
Svar
Foo and Bar (ellers kjent som FUBAR … F *** ed Up Beyond All Recognition) har nettopp blitt brukt som standard generiske navn for ting som klasser, egenskaper, metodenavn osv.
I utgangspunktet er ideen å formidle koden din uten så mye fremmed informasjon som muligens kan komme vekk fra hvordan koden fungerer (dvs. at vi ikke trenger å vite at funksjonen din heter AddUser for å se kode og forstå hva den gjør hvis vi omdøper den til Foo ()).
Svar
Dette er tullete ord som i de fleste tilfeller kan erstattes med mer relevante eksempelord. Ordene «foo» og «bar» brukes ofte i programmering når noen ikke kan tenke seg et godt eksempel.
Hvis «foo» og «bar» er hentet fra FUBAR, hvorfor brukes de så mange fagpersoner i instruksjonseksempler når eksemplene ikke ligner noe som er oppe uten anerkjennelse?
For meg er den vanlige bruken av disse ordene uhensiktsmessig det som er så uforståelig.
Kommentarer
- Merk at like under spørsmålet er det et banner: Vi ' leter etter lange svar som gir litt forklaring og kontekst. Don ' t bare gi et svar på én linje; forklar hvorfor svaret ditt er riktig, ideelt sett med sitater. Svar som ikke inneholder ' som ikke inneholder forklaringer, kan fjernes. Svaret ditt gir lite veien til en forklaring; for øyeblikket er det bare en mening.
- Det er mange andre korte svar. Hvorfor ikke gi et argument hvis du ikke er ' ikke enig med hva jeg ' sier i stedet for å peke på en tekniskitet som ikke ' t gjelder?
- redigere i rev 2 gjorde dette svaret enda verre enn det var før (selv om det var vanskelig å forestille seg hva som kunne være verre): nå er bare et repeter et annet svar som er lagt ut for 4 år siden