Le variabili metasintattiche sono variabili i cui valori sono intesi come parti di sintassi (possibilmente, i nomi di altre variabili, che sono sintassi). Appaiono in formule che operano sulla sintassi, così come la meta-sintassi.
Ad esempio, considera S V O
(oggetto verbo soggetto), un'espressione che indica l'ordine di parole base di un linguaggio umano. Queste tre lettere sono variabili meta-sintattiche. Ognuno denota qualche sintassi. L'argomento di una frase può essere una frase complessa e così via. Inoltre, queste lettere sono scelte in modo significativo nel dominio del problema linguistico: S
sta per soggetto e così via.
foo
e bar
può essere considerato metasintattico nel senso che fungono da segnaposti per nomi reali che devono essere inventati dall'utente. Questi nomi particolari sono significativi nel dominio problematico della scrittura di esempi di codice nella documentazione del computer, in cui sono immediatamente riconoscibili, come i vecchi amici. Quindi, paradossalmente, foo
esprime "Sono famoso per non avere alcun significato. Ovunque mi vedi, sostituiscimi con qualcosa che ne abbia uno!", E questo è il suo significato.
Resta inoltre inteso che dove entrambi foo
e bar
appaiono, l'utente deve sostituire simboli distinti e dove foo
appare più di una volta nello stesso esempio, tutte le occorrenze devono essere sistematicamente sostituite con lo stesso identificatore.
foo
e bar
sono efficaci purché non si scontrino con nulla nel linguaggio del computer, come comandi integrati, parole chiave o nomi di funzioni o variabili della libreria significative. Se ciò accade, i livelli di sintassi e meta-sintassi diventano confusi. Se stai progettando una nuova lingua, ti conviene evitare di introdurre foo
e bar
come identificatori significativi in quella lingua.
Le parole foo and bar hanno un'etimologia, ma quell'etimologia non è collegata al loro significato nella documentazione informatica.