Формализм определения синтаксиса - Syntax Definition Formalism - Wikipedia
В Формализм определения синтаксиса (SDF) это метасинтаксис используется для определения контекстно-свободные грамматики: то есть формальный способ описания формальных языков. Он может выражать весь спектр контекстно-свободные грамматики. Текущая версия - SDF3.[1] А парсер и генератор парсеров для SDF спецификации предоставляются как часть бесплатного Мета-среда ASF + SDF. Они работают с использованием SGLR (Без сканера Парсер GLR ). Анализатор SDF выводит разбирать деревья или, в случае двусмысленность Разбираем леса.
Обзор
Особенности SDF:
- Поддерживает весь спектр контекстно-свободных языков
- Позволяет модульное определение синтаксиса (грамматики могут импортировать подграмматики), что позволяет повторно использовать
- Поддерживает аннотации
Примеры
В следующем примере определяется простой синтаксис логического выражения в SDF2:
модуль basic / Booleansexports сортирует логические контекстные начальные символы Booleancontext-free синтаксис "true" -> Boolean "false" -> Boolean lhs: Boolean "|" rhs: Boolean -> Boolean {left} lhs: Boolean "&" rhs: Boolean -> Boolean {left} "not" "(" Boolean ")" -> Boolean "(" Boolean ")" -> Boolean context-free приоритеты Boolean "&" Boolean -> Boolean> Boolean "|" Boolean -> Boolean
Системы анализа и преобразования программ с использованием SDF
- Мета-среда ASF + SDF предоставляет SDF
- RascalMPL
- Spoofax / IMP [1]
- Stratego / XT
- Страфунски
Смотрите также
Рекомендации
дальнейшее чтение
- Краткое введение в SDF, Visser, J. & Scheerder, J. (2000) CWI
- SDF формализма определения синтаксиса, Марк ван ден Бранд, Пол Клинт, Юрген Винью (2007) CWI
внешняя ссылка
- Комплект для развертывания грамматики
- SdfMetz вычисляет метрики для грамматик SDF
- Загрузите SDF из Домашняя страница мета-среды ASF + SDF
Этот Информатика статья - это заглушка. Вы можете помочь Википедии расширяя это. |