La página de la asignatura compiladores está sujeta a cambios.
Aquí teneis los apuntes de la asignatura,
Apuntes
. Pese a no estar definitivamente terminados, se pueden considerar
así para este cuatrimestre, excepto en los siguientes aspectos.
La parte de generación de Q-código se dará en menor medida
en las clases que en los apuntes. Tan sólo una breve introducción
al respecto. Por otro lado, en las clases se impartirán lecciones
de optimización de código y generación de código ensamblador
que todavía no aparecen en los apuntes.
También podeis contar con un
Proyecto de fin de carrera de compiladores
, realizado en su momento por Robert Clarisó.
Contiene información relacionada con la asignatura, y en particular
explica con claridad diversos aspectos de la optimización de código.
La práctica tiene dos partes diferenciadas.
En primer lugar, la implementación de las fases de análisis léxico,
sintáctico y semántico de un compilador;
y en segundo lugar, la implementación de
la fase de generación de código intermedio. Para las fases de análisis léxico
y sintáctico utilizaremos la herramienta PCCTS.
Las clases de laboratorio comienzan desde la primera
semana de clases. Las dos primeras semanas se aplicarán en el
aprendizaje de PCCTS, y después, se iniciará la implementación
de la primera parte de la práctica. A mediados de curso se hará
un examen delante del ordenador para evaluar esa primera mitad.
A final de curso se hará un examen delante del ordenador
para evaluar la práctica en su integridad. Ambos exámenes consistirán
esencialmente en implementar una pequeña modificación de la práctica.
Su objetivo es comprobar que el alumno ha hecho y comprendido
la práctica, y valorar ese grado de comprensión.
La nota global
de la práctica será el máximo entre, la nota de ese examen final,
y el promedio de ambos examenes.
Cabe insistir en que cada alumno tiene la obligación
de implementar su práctica.
La detección de una copia supone el suspenso y las correspondientes
consecuencias por informar de este hecho al cap d'estudis de la FIB.
Introducción a PCCTS para las dos primeras semanas de laboratorio:
TutorialPCCTS
.
Si quereis instalar PCCTS en vuestro propio LINUX, podeis seguir
las indicaciones que se encuentran en
Página web PCCTS ,
aunque generalmente se puede hacer de forma automática escogiendo
la opción adecuada en vuestro instalador.
Además, para que el gcc no necesite la indicación explícita de donde
se encuentran las librerías de PCCTS, podeis ejecutar el comando
ln -s /usr/lib/pccts/h/* /usr/local/include/
o ln -s /usr/lib/pccts/h/* /usr/include/ ,
dependiendo de donde vaya a buscar las librerias vuestro gcc,
y suponiendo que la instalación del paquete nos las ha dejado en
/usr/lib/pccts/h .
Aquí teneis el enunciado y los módulos de toda
la práctica (primera y segunda parte).