El Formalismo de Definición Sintaxis ( SDF ) es una metasintaxis utilizada para definir gramáticas libres de contexto : es decir, una forma formal de describir lenguajes formales. Puede expresar toda la gama de gramáticas libres de contexto . Su versión actual es SDF3. [1] Se proporciona un analizador sintáctico y un generador de analizadores sintácticos para especificaciones SDF como parte del Metaentorno ASF+SDF gratuito. Estos operan utilizando el SGLR ( analizador GLR sin escáner ). Un analizador sintáctico SDF genera árboles de análisis sintáctico o, en el caso de ambigüedades , bosques de análisis sintáctico.
Características de SDF:
El siguiente ejemplo define una sintaxis de expresión booleana simple en SDF2:
módulo básico/booleanosExportaciones ordena booleano símbolos de inicio libres de contexto Booleansintaxis libre de contexto "verdadero" -> Booleano "falso" -> Booleano lhs:Booleano "|" rhs:Booleano -> Booleano {izquierda} lhs:Booleano "&" rhs:Booleano -> Booleano {izquierda} "no" "(" Booleano ")" -> Booleano "(" Booleano ")" -> Booleano prioridades libres de contexto Booleano "&" Booleano -> Booleano > Booleano "|" Booleano -> Booleano