Especialización de programas lógico-funcionales perezosos

  1. Julián Iranzo, Pascual
Supervised by:
  1. María Alpuente Frasnedo Director

Defence university: Universitat Politècnica de València

Fecha de defensa: 05 May 2000

Committee:
  1. Isidro Ramos Salavert Chair
  2. Salvador Lucas Alba Secretary
  3. Mario Rodríguez Artalejo Committee member
  4. Moreno Falaschi Committee member
  5. Ricardo Peña Marí Committee member

Type: Thesis

Teseo: 79384 DIALNET

Abstract

La evaluación parcial (EP) es una técnica de transformación automática que consigue la optimización del programa original para una clase de datos de entrada, Los lenguajes declarativos presentan una semántica simple y con bases teóricas bien establecidas. Recientemente, se ha introducido un marco genérico para la EP de programas lógico-funcionales basado en el empleo del narrowing, una regla de inferencia que combina el principio de reducción de los lenguajes funcionales y el principio de resolución de los lenguajes logicos. En esta tesis se han investigado las técnicas y requisitos que permiten optimizar dicho método. En ella se han introducido: A- Mejoras en el mecanismo de base. Se ha definido un procedimiento de EP basado en el narrowing perezoso para el que se ha demostrado su corrección y completitud. Se ha identificado la clase de los programas uniformes como aquélla sobre la cual es posible reafinar la estrategia de narrowing perezoso, sin pérdida de completitud. La nueva estrategia se ha denominado narrowing perezoso uniforme y se ha demostrado que es computacionalmente equivalente a la estrategia de narrowing necesario sobre la mencionada clase de programas. Esto permite obtener une valuador parcial que se ha probado que es fuertemente correcto y para el que se consiguen mejores prestaciones que con la estrategia de narrowing perezoso original. B- Técnicas avanzadas de especialización. Se ha mejorado el procedimiento de control del algoritmo genérico de EP introduciendo: i- Una nueva regla de desplegado dinámica. ii- Un operador de abstracción que emplea técnicas de partición. Estas innovaciones han permitido la especialización de programas con respecto a expresiones complejas sin el empleo de arigicios ad hoc, todo ello sin afecar a la terminación del proceso de EP. El método de EP obteniendo es aplicable a los lenguajes lógico-funcionales modernos (específicamente, aquéllos con s