Метасинтаксические переменные - это переменные, значения которых понимаются как части синтаксиса (возможно, имена других переменных, которые являются синтаксисом). Они появляются в формулах, которые работают с синтаксисом, как и метасинтаксис.
Например, рассмотрим S V O
(объект субъектного глагола), выражение, указывающее основной порядок слов некоторого человеческого языка. Эти три буквы являются метасинтаксическими переменными. Каждый обозначает некоторый фрагмент синтаксиса. Предметом предложения может быть сложная именная фраза и т. Д. Кроме того, эти буквы выбраны таким образом, который является значимым в области языковых проблем: S
обозначает предмет и так далее.
foo
и bar
может считаться метасинтаксическим в том смысле, что они служат заполнителями для реальных имен, которые должны быть изобретены пользователем. Эти конкретные имена имеют смысл в проблемной области написания примеров кода в компьютерной документации, где они мгновенно узнаваемы, как старые друзья. Так, как это ни парадоксально, foo
выражается: «Я знаменит тем, что не имел никакого значения. Где бы вы меня ни видели, замените меня чем-то, что имеет!», И в этом его значение.
Понятно также, что там, где оба foo
и bar
появляются, пользователь должен заменять отдельные символы, и foo
если в одном и том же примере появляется более одного раза, все случаи должны последовательно заменяться одним и тем же идентификатором.
foo
и bar
эффективны до тех пор, пока они не конфликтуют с чем-либо на языке компьютера, таким как встроенные команды, ключевые слова или имена важных библиотечных функций или переменных. Если это произойдет, уровни синтаксиса и метасинтаксиса станут запутанными. Если вы разрабатываете новый язык, вам следует избегать введения foo
и bar
значимых идентификаторов в этом языке.
Слова foo и bar имеют этимологию, но эта этимология не связана с их значением в компьютерной документации.