c1 Lab Oratorio Eclipse Jflex
c1 Lab Oratorio Eclipse Jflex
Laboratorio #1
Introducción a Eclipse, JFlex y CUP
Duración estimada: 3 horas
Esta práctica está dedicada a introducirse a las herramientas que usaremos en los cursos de
Compiladores 1 y 2, especialmente Eclipse, JFlex y CUP. Uno de los mayores atractivos de la
plataforma Eclipse es la flexibilidad con la que cuentan sus extensiones, denominadas plugins.
Un plugin es una pequeña aplicación escrita en Java que aumenta la funcionalidad de la
plataforma, haciendo que Eclipse se convierta en un entorno de desarrollo para cualquier cosa
que cuente con unl plugin adecuado, como validadores, etc. Los objetivos de ésta práctica son:
Para hacer esta práctica se asume que previamente se ha instalado el Software Development Kit
(SDK) de Java 1.4. No se incluyen las instrucciones en este documento para esta actividad.
Consulte http://java.sun.com para referencia. Deberá tomar notas detalladas de los resultados
obtenidos en cada paso, ya que debe entregar un informe de laboratorio.
Materiales requeridos
3. La primera vez que se ejecute aparecerá una pantalla de bienvenida que podrá ser visitada
en cualquier momento desde el menú Help → Welcome. Después de navegar por la
información, pasar al entorno de trabajo a través del icono Workbench en la esquina
superior derecha y proceder a familiarizarse con los menús y las características del
Eclipse.
B) Creación de un proyecto Java
3. Se añaden clases al proyecto a través de las opciones File → New→Class. Ingrese “test”
en el recuadro Package,y “Test” en el recuadro Class. Asimismo, marque la opción para
crear automáticamente el “public static void main(String[] args)”. Presione “Finish”,
para que Eclipse proceda a crear los archivos que correspondan.
5. Para especificar la manera en la que queremos ejecutar las clases que forman parte de un
proyecto se crea una configuración. Esto se hace mediante la opción Run → Run...
→Java Application → New. En la ventana correspondiente se podrán especificar la clase
principal del proyecto (pestaña Main) y los argumentos de entrada (pestaña Arguments).
9. Si no han habido problemas hasta este momento, ya cuenta con el ejemplo completo.
Pruebe su demo ejecutando el comando java -classpath .:$CLASSPATH
Example.parser. Este ejemplo acepta inputs de tipo: 1+2; 1*2*3; 5 * (3+2); y
puede llevar cualquier cantidad de whitespace entre cada token. Requiere un punto y
coma al final de cada operación para desplegar el resultado. Pruébelo con diversos inputs
para ver la reacción.
10. Modifique ahora el archivo minimal.lex para que acepte únicamente números menores a
64, generando un mensaje de error apropiado. Recompile desde el paso 6. Es importante
que lea los manuales de JFLex que se adjuntan en el directorio de documentación.
11. Modifique ahora el archivo minimal.lex para que presente el resultado cuando se presione
<ENTER> en vez de punto y coma. Recompile desde el paso 6. Es importante que lea
los manuales de JFLex que se adjuntan en el directorio de documentación.
Entregables
1. Una entrada en su blog, válida como la de esta semana, contando acerca de los resultados
obtenidos y problemas al hacer este laboratorio. Comentar acerca del uso de Java,
Eclipse, Javadoc y otras tecnologías nuevas que no habían tenido la oportunidad de
utilizar, e incluir un informe detallando los resultados obtenidos.