Метасинтаксическая переменная

редактировать
Эта статья о метасинтаксических переменных в информатике и программировании. Для метасинтаксических переменных, используемых в формальной логике, см. Метапеременная (логика). Для использования в разговорных языках см. Имя заполнителя.

Метапеременное это конкретное слово или набор слов, определенные в качестве заполнителя в компьютерной науке и, в частности компьютерных программ. Эти слова обычно встречаются в исходном коде и предназначены для изменения или замены перед использованием в реальном мире. Слова foo и bar являются хорошими примерами, поскольку они используются в более чем 330 запросах инженерной группы Интернета на комментарии, документах, которые определяют основополагающие интернет-технологии, такие как HTTP (веб), TCP / IP и протоколы электронной почты.

По математической аналогии, метасинтаксическая переменная является слово, которое является переменной для других слов, так же, как в алгебре буквы используются в качестве переменных для чисел.

Метасинтаксические переменные используются для именования таких объектов, как переменные, функции и команды, точная идентичность которых не важна, и служат только для демонстрации концепции, которая полезна для обучения программированию.

СОДЕРЖАНИЕ
  • 1 Общие метасинтаксические переменные
    • 1.1 Общее использование
    • 1.2 Японский
    • 1,3 французский
  • 2 Примеры использования
    • 2.1 С
    • 2.2 C ++
    • 2.3 Python
    • 2.4 Запросы IETF на комментарии
  • 3 Примеры данных
    • 3.1 SQL
  • 4 См. Также
  • 5 ссылки
  • 6 Внешние ссылки
Общие метасинтаксические переменные

Поскольку английский является основным языком или lingua franca большинства языков программирования, эти переменные часто встречаются даже в программах и примерах программ, написанных для других разговорных аудиторий.

Однако типичные имена могут зависеть от субкультуры, которая сложилась вокруг данного языка программирования.

Общее использование

Метапеременная обычно используемые во всех языках программирования включают в Foobar, Foo, бар, Баз, QUX, quux, quuz, corge, grault, garply, Вальдо, Фредом, plugh, XYZZY, и глухой звук ; некоторые из этих слов являются отсылками к игре Colossal Cave Adventure. Колебание, колебание, колебание и колебание также используются в Великобритании.

Полную справку можно найти в книге MIT Press под названием The Hacker's Dictionary.

Японский

В японском языке обычно используются слова hoge (ほ げ) и piyo (ぴ よ), а другие общие слова и варианты - это фуга (ふ が), hogera (ほ げ ら) и hogehoge (ほ げ ほ げ). Обратите внимание, что -ra - это окончание множественного числа в японском языке, и дублирование также используется для множественного числа. Происхождение хоге как метасинтаксической переменной неизвестно, но считается, что оно датируется началом 1980-х годов.

французкий язык

Во Франции широко используется слово toto с вариантами tata, titi, tutu в качестве связанных заполнителей. Один из часто упоминаемых источников использования toto - это отсылка к стандартному персонажу, используемому для анекдотов с помощью Tête à Toto.

Примеры использования
Снимок экрана метасинтаксической переменной FOO, назначенной и отображаемой в интерактивном сеансе оболочки.

C

См. Также: язык программирования C

В следующем примере имя функции foo и строка имени переменной являются метасинтаксическими переменными. Строки, начинающиеся с //, являются комментариями.

// The function named foo int foo(void) { // Declare the variable bar and set the value to 1 int bar = 1; return bar; }

C ++

См. Также: C ++

Прототипы функций с примерами различных механизмов передачи аргументов :

void Foo(Fruit bar); void Foo(Fruit* bar); void Foo(const Fruitamp; bar);

Пример, показывающий возможности перегрузки функций языка C ++

void Foo(int bar); void Foo(int bar, int baz); void Foo(int bar, int baz, int qux);

Python

Спам, ветчина и яйца - основные метасинтаксические переменные, используемые в языке программирования Python. Это отсылка к известной комедии « Спам » Монти Пайтона, эпонима языка. В следующем примере спам, ветчина и яйца являются метасинтаксическими переменными, а строки, начинающиеся с символа #, являются комментариями.

# Define a function named spam def spam(): # Define the variable ham ham = "Hello World!" # Define the variable eggs eggs = 1 return

Запросы IETF на комментарии

И RFC IETF, и языки компьютерного программирования представлены в виде простого текста, поэтому необходимо различать метасинтаксические переменные по соглашению об именах, поскольку это не будет очевидно из контекста.

Вот пример из официального документа IETF, объясняющего протоколы электронной почты (из RFC 772 - цитируется в RFC 3092):

 All is well; now the recipients can be specified. S: MRCP TO:lt;Foo@Ygt; lt;CRLFgt; R: 200 OK S: MRCP TO:lt;Raboof@Ygt; lt;CRLFgt; R: 553 No such user here S: MRCP TO:lt;bar@Ygt; lt;CRLFgt; R: 200 OK S: MRCP TO:lt;@Y,@X,fubar@Zgt; lt;CRLFgt; R: 200 OK Note that the failure of "Raboof" has no effect on the storage of mail for "Foo", "bar" or the mail to be forwarded to "fubar@Z" through host "X".

(В документации для texinfo подчеркивается различие между метапеременными и простыми переменными, используемыми в языке программирования, которые документируются в каком-либо файле texinfo следующим образом: «Используйте команду @var для обозначения метасинтаксических переменных. Метасинтаксическая переменная - это то, что обозначает другой фрагмент текста. Например, вы должны использовать метасинтаксическую переменную в документации функции для описания аргументов, которые передаются этой функции. Не используйте @var для имен конкретных переменных в языках программирования. Это конкретные имена из программы, поэтому @code для них подходит. ")

Другой момент, отраженный в приведенном выше примере, - это соглашение о том, что метапеременная должна быть равномерно заменена одним и тем же экземпляром во всех его проявлениях в данной схеме. Это контрастирует с нетерминальными символами в формальных грамматиках, где нетерминалы справа от продукции могут быть заменены различными экземплярами.

Пример данных

SQL

Обычно имя ACME используется в примерах баз данных SQL и в качестве названия компании-заполнителя с целью обучения. Термин «База данных ACME» обычно используется для обозначения набора данных базы данных для обучения или только для примера, используемого исключительно для обучения или тестирования. ACME также часто используется в документации, которая показывает примеры использования SQL, что является обычной практикой во многих учебных текстах, а также в технической документации таких компаний, как Microsoft и Oracle.

Смотрите также
использованная литература
внешние ссылки
Последняя правка сделана 2024-01-02 08:34:25
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте