Вы находитесь на странице: 1из 8

Organizacin de Lenguajes y Compiladores 1

[Ao]

Gua de Instalacin JFlex y Cup

Unas de las fases para realizar un compilador son el anlisis lxico y anlisis sintctico del lenguaje. JFlex es una herramienta desarrollada en Java que se usa para realizar el analizador lxico de un compilador; y CUP es la herramienta que se usa para generar el analizador sintctico. La presente gua mostrar la instalacin de JFlex y Cup para crear analizadores lxicos y sintcticos en el lenguaje JAVA, instalados en el Sistema Operativo Windows 7.

Prerrequisitos
Para poder instalar JFlex y Cup es necesario de los siguientes requerimientos: 1. JDK de java, el cual puede ser descargado de la pgina http://www.oracle.com/technetwork/java/javase/downloads/java-se-jdk-7download-432154.html, se selecciona el tipo de JDK de acuerdo a la arquitectura y SO del computador a utilizarse. 2. Ya instalado el JDK, tener las variables de entorno del equipo (Path y Classpath) con la ruta de la carpeta BIN en donde se halla instalado el JDK. 3.

INSTALACIN DE JFLEX Y CUP


DESCARGA LAS FUENTES NECESARIAS. Descargar el archivo jflex-1.4.3.zip disponible en http://jflex.de/download.html. Descargar el CUP 11a beta 20060608 runtime y el archivo CUP 10k sourcecode release disponible en http://www2.cs.tum.edu/projects/cup/

CREACIN DE CARPETA CONTENEDORA DE FUENTES Crear una carpeta en el directorio C:/ con el nombre deseado, en este documento se creara una llamada analizadores (C:\analizadores). Descomprimir la carpeta JFlex descargada dentro de la carpeta analizadores. Descomprimir el archivo CUP 10k sourcecode release y copiar la carpeta java_cup dentro de la carpeta analizadores.

CREACIN DE ARCHIVOS DE CONFIGURACIN lexico.bat Para compilar los archivos .jflex es necesario recurrir a la consola cada vez que se modifica o se escribe algo nuevo en este tipo de documentos. Esto puede ser un trabajo que consuma tiempo y esfuerzo del programador as que se crean estos archivos para que el proceso sea ms eficiente. Se abre un documento de texto (bloc de notas o notepad++) y se escribe lo que se muestra en la figura:

JAVA_HOME tiene la ruta en donde est instalado el JDK. Se coloca la carpeta en donde se tiene el archivo el archivo .jflex

sintactico.bat Es un archivo igual al lexico.bat y contiene las siguientes instrucciones:

NOTAS: Estos archivos pueden ser guardados en cualquier parte. Los nombres de los archivos pueden ser escogidos aleatoriamente o al gusto del usuario.

IMPLEMENTACIN EN UN PROYECTO EN NETBEANS Se abre Netbeans y se crea un nuevo proyecto de tipo Java Application.

Dentro de la carpeta del proyecto, agregar una carpeta llamada lib y copiar en ella el ejecutable java-cup-11a-runtime.jar

Regresar al IDE, dar clic derecho en bibliotecas, seguido de un clic en Agregar un archivo JAR/Carpeta Se busca el archivo lib creado recientemente y agregamos el java-cup-11aruntime.jar.

CREACIN DEL SCAN.JFLEX

CREACIN DEL ARCHIVO PARSER.CUP

Estos documentos se guardan en la carpeta src del proyecto.

PRUEBAS DE COMPILACIN Se da doble clic en los ficheros lexico.bat y sintactico.bat, esto crear 3 archivos .java dentro del proyecto. Al tener estos tres archivos en el proyecto ya es ms fcil incluir funciones que puedan interactuar con ellos y crear el compilador. lexico.java es el archivo que contiene un escner para analizar lxicamente el archivo fuente. El nombre que aparece se debe a las directivas del archivo .jflex analizador_sintactico.java contiene el parser para analizar sintcticamente el archivo fuente. tabla_simbolos.java contiene la tabla de smbolos del compilador a crearse.

EXPRESIONES REGULARES Identificadores

L _? ( L | D )*
Nmeros

-? D ( . D+ | D*)
Comentarios

// (lo que sea) \n /* lo que sea */


Operaciones matemticas

-? D ( . D+ | D*) (( + | - | / | * ) -? D ( . D+ | D*) )+

Вам также может понравиться