Analisis lexico.5.5
Generadores de analizadores Lexicos
ANALIZADOR LÉXICO
Un analizador léxico es un módulo destinado a leer caracteres del archivo de entrada, donde se encuentra la cadena a analizar, reconocer subcadenas que correspondan a símbolos del lenguaje y retornar los tokens correspondientes y sus atributos.
GENERADORES DE ANALIZADORES LÉXICOS
FLEX
LEX
JTLex
GENERADOR LEX
Es un programa para generar analizadores léxicos (en inglés scanners o lexers), se utiliza comúnmente con el programa yacc que se utiliza para generar análisis sintáctico, escrito originalmente por Eric Schmidt y Mike Lesk, es el analizador léxico estándar en los sistemas Unix, y se incluye en el estándar de POSIX. Lex toma como entrada una especificación de analizador léxico y devuelve como salida el codigo fuente implementando el analizador léxico en C.
Aunque tradicionalmente se trata de software propietario, existen versiones libres de lex basadas en el código originalde AT&T en sistemas como OpenSolaris y Plan 9 de los laboratorios Bell. Otra versión popular de software libre de lex es Flex.
GENERADOR FLEX
Es una herramienta para la generación de programas que realizan concordancia de patrones en texto, es una herramienta para generar escáneres. programas que reconocen patrones léxicos en un texto, es una reescritura de la herramienta LEX del Unix de AT&T (aunque lasdos implementaciones no comparten ningún código), con algunas extensionese incompatibilidades, de las que ambas conciernen a aquellos que desean escribir analizadores aceptables por cualquier implementación.FLEX lee los archivos de entrada dados, o la entrada estándar si no se le haindicado ningún nombre de archivo, con la descripción de un escáner agenerar. La descripción se encuentra en forma de parejas de expresionesregulares y código C, denominadas reglas.
GENERADOR DE ANALIZADORES LÉXICOS JTLex
JTLex en cambio permite expresar conjuntamente sintaxis y semántica al estilo de los esquemas de traducción. A su vez el proceso de computo de atributos es implementado por JTLex por un autómata finito traductor con las ventajas de eficiencia que esto supone.
Una especificación JTLex permite no sólo asociar un procedimiento, o acción, a cada expresión
regular, sino también a cada ocurrencia de un símbolo dentro de la expresión.


Comentarios
Publicar un comentario