Você está na página 1de 6

Universidad de San Carlos de Guatemala

Facultad de Ingeniería
Escuela de Ciencias y Sistemas
Organización de Lenguajes y Compiladores 1

Instalando y utilizando JFlex/CUP


Linux y Mac OS

Ricardo Alfredo Illescas Alfonso


200722379
Instalación de JFlex y CUP

Jflex es un generador de analizador léxico (tambien conocido como generador de escaner) para
Java, escrito en Java. Es una re escritura de Jlex desarrollado por Elliot Berk en la Universidad de
Princeton. Como Vern Paxson dice de su herramienta C/C++ flex: “no comparten ningún código”.

Cup es un sistema para generar parser LALR para especificaciones simples. Sirve de la misma
forma que el programa (bastante usado) YACC y de hecho ofrece las funciones de YACC. Pero,
CUP esta escrito en Java, usa especificaciones incluyendo código Java, y produce parsers que se
implementan en Java.

Este manual explicara como instalar y utilizar estas 2 herramientas, utilizaremos Mac OS X pero las
mismas instrucciones aplican para linux y otros S.O. “UNIX -like”, como IDE usaremos NetBeans.

Obteniendo JFlex y CUP

Descargamos los archivos de sus respectivas paginas,

“JFlex + all documentation”

http://jflex.de/download.html

“CUP 11a beta 20060608”

http://www2.cs.tum.edu/projects/cup/

Para instalar JFlex, utilizamos el siguiente comando en consola. Esto creara un link a donde
tenemos JFlex y nos permitira usarlo desde la consola.

sudo ln -s “ubicación del JFlex” “el path binario donde corre el interprete java”

esto creara un symlink para para poder llamar a JFlex desde la consola.
Utilizando JFlex/CUP

Creamos un proyecto en NetBeans, dentro de este una carpeta, donde colocaremos el .jar de
JFlex y CUP.

En NetBeans creamos nuestro proyecto, en “libreria” seleccionamos “agregar JAR/Folder”


Seleccionamos nuestros 2 .jar (dejamos la opción de usar el path relativo).

Así tendremos las librerías agregadas a nuestro proyecto y podremos utilizar JFlex/CUP
Convirtiendo el archivo .jflex

Una vez creamos nuestro archivo .JFlex, hay 2 formas de convertirlo. Usando la GUI de JFlex o por
consola.

En Consola el procedimiento es:

“jflex 'archivo.jflex´ “

así generaremos nuestro escáner .java para utilizarlo en el proyecto.


Convirtiendo CUP
Una vez tenemos nuestra gramática en un archivo .cup, lo ejecutamos en terminal de esta manera:

java -jar java-cup-11a.jar “archivo.cup”

esto generare el parser y los símbolos en archivos java para trabajarlos en el proyecto.

Você também pode gostar