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/Flex). Aprender a utilizar generadores de analizadores sintácticos (YACC/Bison). Diseñar e implementar un compilador/intérprete de LSystems.
Prerrequisitos 1º Programación Estructurada 2º Estructura de Datos 3º Matemáticas Discretas 4º Autómatas y Lenguajes formales Conocimientos de S. O. : Windows Programación en: C / Java API’s Win32 (programación para Windows) 5º Compiladores mapacurricular2008.png
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 KENNETH C. Louden. Construcción de compiladores. Principios y práctica. Cengage Learning Latin America, Libro de apoyo: LEVINE Jhon, et al. Lex & Yacc. O’Reilly Associates Inc
Software Sistema Operativo: Windows API’s Win32 Ambientes de desarrollo MSVC++ (VS Express para Desktop 2012)
Evaluación 85% de asistencia para derecho a examen. 30% Tareas. 70% Examen parcial (Teoría/Proyecto). Posibilidad de décimas extras sobre el examen parcial por participación en clase o trabajo continuo. Restricciones: Las tareas y/o proyectos se deben entregar el día y hora establecidos.