La gestión de errores sintácticos en la programación es crucial para asegurar la correcta ejecución de los programas. Es fundamental detectar y recuperarse de los errores rápidamente para no retrasar el proceso de los programas correctos.
Gran parte de la detección y recuperación de errores se concentra en la fase del analisis sintáctico
Se recomienda tener la propiedad de prefijo variable. que detecta la presencia de un error al ver un prefijo que no es de alguna cadena valida
No debe retrasar de forma significativa el proceso de programas correctos
Recuperarse de cada error con la suficiente rapidez como para detectar errores posteriores
Informar de Errores con claridad y exactitud
Generador analizador sintáctico
Un programa fuente en YACC tiene tres partes:
3.El generador de analizadores sintácticos YACC Se puede construir un traductor utilizando Y ACC de la forma que se ilustra en la figura. Primero, se prepara un archivo, por ejemplo traduce
2.YACC significa "otro compilador de compiladores más" (del inglés Yet Another Compiler-Compiler)
1.YACC se usará como base de esta exposición, puesto que implanta muchos de los conceptos estudiados en las dos secciones anteriores y es fácil de encontrar
6.Si se necesitan otros procedimientos, se pueden compilar o cargar con y. tab. e, igual que en cualquier programa en C.
5.El programa y. tab. c es una representación de un analizador sintáctico escrito en C, junto con otras rutinas en C que el usuario pudo haber preparado
4.La orden del sistema UNIX Yacc traduce y transforma al archivo traduce, y en un programa escrito en C llamado y .tab.c usando el método LALR
si el lenguaje que define contiene alguna cadena que tenga mas de un arbol de derivacion para esa gramatica
se aplicara una serie de metodos para eliminacion de posibles abliguedades y la recursion por la izquierda que pudiese existir en todas y cada una de las producciones de la gramatica
Una GLC viene definida por la represencion de una estructura de sentencia condicional (if-else)
derivaciones
mas a la derecha
Se sustituye cada paso la variable mas ala derecha de la forma de frase
mas a la izquierda
Se sustituye cada paso la variable mas ala izquierda de la forma de frase
vocabulario
es la union del conjunto de simbolos terminales y no terminales de dicha gramatica
simbolos no terminales
no pertenece los simbolos terminales sy se utiliza para especificar la gramatica
simbolos terminales
Son aquellos simbolos basicos con los que se forman las cadenas
Analisis Sintactico
informa errores sintácticos de forme precisa y significativa
toma como entrada la secuencia de componentes léxicos y produce como salida un árbol sintáctico
se denomina como la fase primordial del compilador o motor del compilador
construir un árbol gramatical o árbol sintáctco que represente esta estructura
la tarea del analizador sintáctico es determinar la estructura sintáctica de un programa, a partir de los tokens producidos por el analizador léxico
comprueba si la cadena proporcionada por el analizador léxico puede ser generada por la gramatica que define el lenguaje fuente