Optimización Automática de Programas
Nombre: Optimización Automática de Programas
Semestre: 5A
Código: OAP
Créditos: 3 Teoría + 3 Práctica
Profesores:
Germán Vidal.
Objetivos
Los objetivos de esta asignatura se centran en aprender diferentes
técnicas automáticas para transformar y optimizar programas.
Los contenidos se estructuran en tres bloques:
- Introducción a las técnicas de transformación de programas
- Técnicas de especialización:
- Estudian el problema de, dado un programa y "parte" de sus datos
de entrada, generar un programa especializado para dichos datos.
- Se desarrolla una herramienta de especialización de programas
en el laboratorio
- Para facilitar su presentación, las diferentes
técnicas para la optimización automática de
programas se introducirán en el marco de un lenguaje
declarativo muy simple.
- Transformaciones basadas en XSLT
- Se estudia la notación XPath y las transformaciones XSL, que se
pueden usar para transformar documentos XML a diferentes formatos.
Temario
- Introducción.
- Técnicas de análisis estático de programas.
- Técnicas de especialización de programas.
- Técnicas de transformación basadas en XSLT.
Prácticas
Material
Bibliografía
- Terrence W. Pratt. Lenguajes de Programación. Diseño e Implementacion.
Prentice-Hall.
- N. Jones, K. Gomard, and P. Sestoft. Partial Evaluation and
Semantics-Based Program Generation. Prentice-Hall, 1993.
Evaluación
La evaluación se realizará principalmente a partir de las prácticas
desarrolladas en el laboratorio (un 60% de la nota final).
Además, habrá un examen teórico sobre los contenidos de la asignatura
(un 40% de la nota final) que podrá sustituirse por la realización de
trabajos prácticos (previa aprobación de los mismos por el profesor).
También existe la posibilidad de realizar la
exposición de trabajos voluntarios en clase para subir nota.
Email: gvidal (at) dsic.upv.es