Compiladores Ingeniería en Computación M. en C. J. Jesús Arellano Pimentel
Objetivos Objetivo de la asignatura: Obtener los elementos teórico-prácticos suficientes para analizar, diseñar e implementar compiladores; para lo cual conocerá las diferentes fases que componen esta herramienta. Objetivos particulares: Aprender a utilizar generadores de analizadores lexicográficos (LEX). Aprender a utilizar generadores de analizadores sintácticos (YACC). Diseñar e implementar un compilador de pseudocódigo.
Prerrequisitos 1º Programación Estructurada 2º Estructura de Datos 3º Teoría Matemática de la Computación 4º Programación de Sistemas Sistemas Operativos Conocimientos de S. O. : Windows Linux Programación en: C API’s GTK/GDK 5º Compiladores 6º
Contenido de la asignatura Introducción al proceso de compilación. Análisis léxico. Análisis sintáctico. Análisis semántico. Generadores de código. Optimización de código.
Bibliografía Libros base: AHO, Sethi & Ullman. Compiladores: Principios, técnicas y herramientas. Addison Wesley ALFONSECA Manuel, et al. Compiladores e interpretes: teoría y práctica. Pearson Prentice Hall GÁLVEZ Sergio, et al. Compiladores: Traductores y Compiladores con Lex/Yacc, Jflex/Cup y JavaCC. Universidad de Malaga Libro de apoyo: WALL Kart. Programación en Linux al descubierto. 2ª Ed. Prentice-Hall LEVINE Jhon, et al. Lex & Yacc. O’Reilly Associates Inc
Software Sistemas Operativos: Linux (FC12) API’s GTK+ Ambientes de desarrollo Glade2, gcc, make, etc.
Evaluación 85% de asistencia para derecho a examen. 35% Tareas y/o Proyectos (Si los hay). 65% Examen parcial. Posibilidad de décimas extras sobre el examen parcial por participación o trabajo en clase. Restricciones: Posible pérdida de décimas por no responder preguntas directas en clase. Las tareas y/o proyectos se deben entregar el día y la hora establecidos.
Página Web