parser (analizador sintáctico)
Un parser o analizador sintáctico analiza la secuencia de
tokens o elementos léxicos producida por un analizador léxico para
determinar su estructura gramatical, agrupando los elementos
léxicos en conjuntos mayores según las reglas de la gramática. Si
la secuencia de elementos léxicos es válida, el producto final es
un árbol de tokens cuya raíz es el símbolo inicial de la
gramática. Si no se puede conseguir esto, el archivo es inválido
y se produce un mensaje de error adecuado. Las agrupaciones
sintácticas y las reglas para construir estas agrupaciones a
partir de sus elementos constituyentes para la sintaxis de
LilyPond están definidas en lily/parser.yy y se muestran en
la forma normal de Backus (BNF) dentro de LilyPond
grammar. Este archivo se usa para construir el analizador
sintáctico durante la compilación del programa por parte del
generador de analizadores sintácticos, Bison. Es parte del código
fuente y no se incluye dentro de la instalación binaria de
LilyPond.