Les variables métasyntaxiques sont des variables dont les valeurs sont comprises comme des morceaux de syntaxe (éventuellement, les noms d'autres variables, qui sont la syntaxe). Ils apparaissent dans des formules qui fonctionnent sur la syntaxe, tout comme la méta-syntaxe.
Par exemple, considérons S V O
(objet verbe sujet), une expression indiquant l'ordre des mots de base d'un langage humain. Ces trois lettres sont des variables métasyntaxiques. Chacun dénote un morceau de syntaxe. Un sujet de phrase peut être une phrase substantielle complexe, etc. De plus, ces lettres sont choisies d'une manière significative dans le domaine du problème linguistique: S
synonyme de sujet, etc.
foo
et bar
peuvent être considérés comme métasyntaxiques dans le sens où ils servent de supports pour des noms réels qui doivent être inventés par l'utilisateur. Ces noms particuliers sont significatifs dans le domaine problématique de l'écriture d'exemples de code dans la documentation informatique, où ils sont instantanément reconnaissables, comme de vieux amis. Donc, paradoxalement, foo
exprime "Je suis célèbre pour n'avoir aucun sens. Où que vous me voyiez, remplacez-moi par quelque chose qui en a un!", Et c'est sa signification.
Il est également entendu que là où les deux foo
et bar
apparaissent, l'utilisateur doit substituer des symboles distincts, et où foo
apparaît plus d'une fois dans le même exemple, toutes les occurrences doivent être systématiquement remplacées par le même identifiant.
foo
et bar
sont efficaces tant qu'ils n'entrent pas en conflit avec quoi que ce soit dans le langage informatique, comme les commandes intégrées, les mots-clés ou les noms des fonctions ou variables de bibliothèque importantes. Si cela se produit, les niveaux de syntaxe et de méta-syntaxe deviennent confus. Si vous concevez une nouvelle langue, il vous appartient d'éviter d'introduire foo
et bar
comme identifiants significatifs dans cette langue.
Les mots foo et bar ont une étymologie, mais cette étymologie n'est pas liée à leur signification dans la documentation informatique.