Что означает двойное двоеточие, за которым следует знак равенства (::=) в документации по программированию?
что значит ::=
значит в документации по программированию?
например документация на Lua: или документация Python.
4 ответов
Он символизирует "правило вывода символов" в Форма Backus-Naur
это означает, что в:
<symbol> ::= __expression__
нетерминального <symbol>
состоит из (определяется как, строится, происходит от) __expression__
Он используется для описания грамматики языка.
обратите внимание, что оба примера находятся в Расширенная Форма Backus-Naur, но с использованием традиционного разделителя символов-выражений BNF (::=
).
Это Форма Backus-Naur (BNF) обозначение, описывающее язык. ::=
в этом контексте означает определяется как.
например, в документации по языку Python, на которую вы ссылаетесь, идентификатор определяется как буква или подчеркивание, за которым следует буква, цифра или подчеркивание. Затем в нотации описывается, что такое буква и цифра, и так далее.
Как уже говорили другие, это часть нотации BNF. Википедия имеет пояснения и некоторые примеры, которые я не буду повторять здесь.
история и эволюция ::=
сам символ объясняется в история усилий Алгола (p29 и далее).
синтаксис данного элемента. Например:
identifier ::= (letter|"_") (letter | digit | "_")*
означает, что все идентификаторы должны соответствовать данному правилу синтаксиса.