lex jflex alvarez

1
es Una herramienta para la generación automática de análisis léxico donde se necesita conocer la especificación de tokens a reconocer. Lex JFlex Es Una herramienta que permite especificar un análisis léxico mediante de especificaciones de expresiones regulares para describir patrones de los tokens. Un generador de analizador léxico también conocido como generador de Scanner que acepta una especificación para la concordancia de cadenas de caracteres y produce un programa en un lenguaje de propósito general que reconoce expresiones regulares. es Diferencia con Lex Utiliza el lenguaje Java Como se usa Transformaciones simples Análisis y estudios estadísticos al nivel léxico Para generar un analizador léxico para un compilador. Formato general de un programa {Código del usuario} %% {Opciones y declaraciones} %% {Reglas léxicas} Su diferencia Con JFlex Sus acciones por lo regular son escritas en C y es considerada como una herramienta de Linux. Se utiliza para Transformaciones sencillas. Análisis y estudios estadísticos al nivel léxico Se puede utilizar con un generador de análisis para llevar a cabo la fase de análisis léxico. Sección código del usuario Utilizado para incluir cualquier declaración java (paquete, importación o clase) que sea necesaria para compilar el scanner. Sección opciones y declaraciones Es el código que se incluye de la clase que declara un analizador léxico, estados léxicos y macro declaraciones. Sección de reglas léxicas Se usa para especificar los patrones a reconocer y las acciones que tienes asociadas. Contiene expresiones regulares y acciones que se ejecutan cuando el analizador léxico encuentra un lexema que cumple con la expresión regular. Generador de Analizador Léxico Se utiliza para Adaptar JFlex al framework 1. El escáner pertenece al paquete compiler.lexical 2. Debe importarse: La clase Token El interfaz ScannerIF Las clases de gestión de errores 3. Debe activarse la compatibilidad con el framework %cup %implements ScannerIF %scanerror LexicalError 4. Opcionalmente declararse la función crearToken 5. Cada acción debe acabar con un return crearToken (…); Alvarez Cahuich Duviara Isabel-42302- 7mo. “A” Actividad 2.3 Lex/JFlex -Compiladores: Principios, Técnicas y herramientas- 2da Edición-Aho, Lam, Sethi, Ullman Addison. -Diseño de Compiladores- A. Garrido, J. Iñesta, J. Moreno y J. Pérez 2002

Upload: rodrigo-aleman

Post on 26-Oct-2015

26 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Lex JFlex Alvarez

es

Una herramienta para la generación automática de análisis léxico donde

se necesita conocer la especificación de tokens a reconocer.

Lex

JFlex

Es

Una herramienta que permite especificar un

análisis léxico mediante de especificaciones de

expresiones regulares para describir patrones de

los tokens.

Un generador de analizador léxico también conocido como generador de Scanner que acepta una especificación para la concordancia de cadenas de caracteres y produce un programa en un lenguaje de propósito general que

reconoce expresiones regulares.

es

Diferencia con Lex

Utiliza el lenguaje Java

Como se usa

Transformaciones

simples

Análisis y estudios

estadísticos al

nivel léxico

Para generar un

analizador léxico para un

compilador.

Formato general de

un programa

{Código del usuario} %% {Opciones y declaraciones} %% {Reglas léxicas}

Su diferencia Con JFlex

Sus acciones por lo regular son

escritas en C y es considerada

como una herramienta de Linux.

Se utiliza para

Transformaciones

sencillas.

Análisis y

estudios

estadísticos

al nivel

léxico

Se puede utilizar con un

generador de análisis para

llevar a cabo la fase de

análisis léxico.

Sección código del usuario

Utilizado para incluir cualquier declaración java (paquete, importación o

clase) que sea necesaria para compilar el scanner.

Sección opciones y declaraciones

Es el código que se incluye de la clase que declara un

analizador léxico, estados léxicos y macro declaraciones.

Sección de reglas léxicas

Se usa para especificar los

patrones a reconocer y las

acciones que tienes asociadas.

Contiene expresiones regulares y

acciones que se ejecutan cuando

el analizador léxico encuentra un

lexema que cumple con la

expresión regular.

Generador de Analizador

Léxico

Se utiliza para

Adaptar JFlex al framework 1. El escáner pertenece al paquete compiler.lexical 2. Debe importarse: La clase Token El interfaz ScannerIF Las clases de gestión de errores 3. Debe activarse la compatibilidad con el framework %cup %implements ScannerIF %scanerror LexicalError 4. Opcionalmente declararse la función crearToken 5. Cada acción debe acabar con un return crearToken (…);

Alvarez Cahuich Duviara Isabel-42302- 7mo. “A” Actividad 2.3 Lex/JFlex

-Compiladores: Principios, Técnicas y herramientas- 2da Edición-Aho, Lam, Sethi, Ullman Addison.

-Diseño de Compiladores- A. Garrido, J. Iñesta, J. Moreno y J. Pérez 2002