Compiladores

Planeación del curso.

I. Información general profesor-alumnos

1.- Nombre y Clave de la UEA:
  • Compiladores
2.- Horarios
  • Teoria: Lunes, Miércoles y Viernes de 19:30 a 21:00
  • Laboratorio: Jueves de 18:00 a 20:00
3.- Horario de asesorías
  • De lunes a viernes de 10:00 a 14:00 y de 15:00 a 19:00 fuera de horarios de curso
4.- Nombre del profesor y del ayudante
  • Profesor: Humberto Cervantes Maceda
  • Ayudante: ?

II. Contenido del Curso

5.- Objetivos del curso.
  • Que el alumno comprenda los principio que hay detrás de los compiladores. Que realice en el laboratorio un compilador.
6.- Calendarización

Semana Contenido
1
  • Presentación del curso
  • Exposición global de los principios básicos de un compilador
2
  • Conceptos del análisis Lexico
  • Lectura de archivo fuente
  • Introducción de conceptos OO
  • LABO: Familiarización con el entorno de desarrollo, utilización del lector de caracteres
3
  • Gramáticas y lenguajes
  • Generación de tokens
  • LABO: Escritura del primera version del análizador lexico.
4
  • Conceptos del análisis Sintáctico
  • Descripción de la realización del análizador sintáctico
  • LABO: Realización de la primera versión del análizador sintáctico
5
  • Arboles de sintaxis (conceptos y realización)
  • LABO: Segunda versión del análizador sintáctico (inclusión del árbol)
6
  • Traducción y entorno de ejecución
  • Recuperación de errores
  • LABO: Tercera versión del análizador (traductor)
7
  • Tablas de simbolos (conceptos y realización)
  • LABO: Tercera versión del análizador (inclusión de tabla de simbolos)
8
  • Optimización
  • LABO: Agregar mejoras al compilador
9
  • Herramientas de generación de análizadores
  • LABO: Practica con una herramienta de generación de análizador
10
  • Introducción a XML
  • LABO: Análizador de XML, parte 1
11
  • Análizis de archivos XML
  • LABO: Análizador de XML, parte 2
12
  • Revisión de proyectos
  • Examenes de recuperación

7.- Bibliografía
  • Aho, Sethi y Ullman. Principles of Compiler Design. Addisson Wesley. 1977.
  • Eckel, B., Thinking in Java, Prentice Hall, 3a edición, 2002

III.- Evaluación del curso

8.- Modalidades de evaluación
  • 2 Examenes parciales
  • Prácticas
  • Tareas
9.- Fechas de evaluación
  • Exámenes parciales: Semanas 6 y 11
  • Prácticas: Breve reporte de cada práctica y al final de la Semana 12
  • Tareas: a lo largo del trimestre
10.- Ponderación de elementos de evaluación
  • Examenes: 60 %
  • Prácticas: 30 %
  • Tareas: 10 %
11.- Criterios de asignación de calificación
  • NA: < 6
  • S: >= 6 y < 7.5
  • B: >= 7.5 y < 9
  • MB: >= 9

Información adicional

El curso cuenta con un minisitio web: http://www.humbertocervantes.net/cursos/compiladores

Ultima actualización: 14 Septiembre 2005
contacto: hcm@xanum.uam.mx
Homepage