Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Синтаксис Определение формализма ( SDF ) является metasyntax используется для определения контекстно-свободных грамматик : то есть формальный способ описания формальных языков. Он может выражать весь спектр контекстно-свободных грамматик . Его текущая версия - SDF3. [1] анализатор и генератор синтаксических анализаторов для спецификаций SDF предусмотрены как часть свободного ASF + SDF Мета окружающей среды . Они работают с использованием SGLR ( анализатора GLR без сканирования ). Анализатор SDF выводит деревья синтаксического анализа или, в случае неоднозначности , анализирует леса.

Обзор [ править ]

Особенности SDF:

  • Поддерживает весь спектр контекстно-свободных языков
  • Позволяет модульное определение синтаксиса (грамматики могут импортировать подграмматики), что позволяет повторно использовать
  • Поддерживает аннотации

Примеры [ править ]

В следующем примере определяется простой синтаксис логического выражения в SDF2:

модуль базовый / логическиеэкспорт сортирует Boolean контекстные начальные символы Booleanконтекстно-свободный синтаксис "истина" -> логическое значение "false" -> Boolean lhs: логическое "|" rhs: Boolean -> Boolean {left}  lhs: Boolean "&" rhs: Boolean -> Boolean {left}  "not" "(" Boolean ")" -> Boolean  "(" Boolean ")" -> Boolean контекстно-свободные приоритеты Логическое "&" Логическое -> Логическое> Логическое "|" Логическое -> Логическое

Системы анализа и преобразования программ с использованием SDF [ править ]

См. Также [ править ]

Ссылки [ править ]

Дальнейшее чтение [ править ]

Внешние ссылки [ править ]