Зворотний зв'язок

Мова та метамова

Перепишемо фразу "оператор присвоювання складається з імені, знака ":=" і виразу" із новими позначеннями так:

<оператор присвоювання> має структуру <ім'я> ':=' <вираз>.

Замість слів "має структуру" поставимо знак "::=" і одержимо щось схоже на формулу:

<оператор присвоювання> ::= <ім'я> ':=' <вираз>.

Взагалі, усяку фразу вигляду

<поняття> має структуру <метавираз>

можна переписати в такому вигляді:

<поняття> ::= <метавираз>.

Синтаксичні правила, записані у вигляді <поняття> ::= <метавираз>, називаються формами Бекуса-Наура, за прізвищами тих, хто їх придумав. Форми Бекуса-Наура скорочено називаються БНФ. Поняття, записане в БНФ ліворуч від "::=", називається її лівою частиною, а метавираз праворуч – правою. Знак "::=" не є символом мови й називається метасимволом.

Сама по собі БНФ<оператор присвоювання> ::= <ім'я> ':=' <вираз>

задає лише загальну структуру кожного з представників поняття "оператор присвоювання", але не їх конкретний вигляд. Для цього треба описати структуру представників понять <ім'я> і <вираз>. Пригадаємо: "ім'я – це послідовність букв і цифр, що починається з букви". У цій фразі виникають одразу два нові поняття – <буква> і <послідовність букв і цифр>. Перепишемо її у вигляді БНФ

<ім'я>::=<буква><послідовність букв і цифр>.

На цьому поки що зупинимося. Очевидно, для описання синтаксису останніх двох понять потрібні будуть свої БНФ, можливо, з новими поняттями. У всякому разі, зараз ми припустимо, що

синтаксис виразів мови задається деякою сукупністю БНФ, або синтаксичних правил.

А тепер почнемо уточнювати, яким саме чином сукупність БНФ задає синтаксис виразів мови.

Приклад 1. Розглянемо мову, виразами в якій є речення, що складаються з підмета й присудка. Підмет, крім того, може мати означення (а може і не мати). Цим означенням може бути одне зі слів – злющий або великий, підметом – комар або слон, присудком – дзижчить або тупотить. Побудуємо сукупність БНФ, що задають синтаксис речень.

Спочатку введемо додаткові позначення. Якщо структура представників якогось поняття задається кількома БНФ, то об'єднаємо їх, записавши альтернативні праві частини в однім правилі й відокремивши символом "|". Цей символ позначає слово "або"; він також є метасимволом.

З цими позначеннями очевидні такі БНФ:

<означення> ::= великий | злющий

<підмет> ::= комар | слон

<присудок> ::= дзижчить | тупотить


Реферати!

У нас ви зможете знайти і ознайомитися з рефератами на будь-яку тему.







Не знайшли потрібний реферат ?

Замовте написання реферату на потрібну Вам тему

Замовити реферат