Evaluación Parcial Offline Dirigida por Narrowing: Técnicas de Optimización y Aplicaciones

La evaluación parcial (EP) de programas es una técnica formal para la especialización y optimización de programas. Un evaluador parcial toma un programa y sólo una parte de sus datos de entrada (los llamados datos estáticos) e intenta llevar a cabo todas las computaciones que sean posibles a partir...

Full description

Bibliographic Details
Main Author: Arroyo Delgado, Gustavo
Other Authors: Vidal Oriola, Germán Francisco
Format: Doctoral Thesis
Language:Spanish
Published: Universitat Politècnica de València 2012
Subjects:
Online Access:http://hdl.handle.net/10251/17655
Description
Summary:La evaluación parcial (EP) de programas es una técnica formal para la especialización y optimización de programas. Un evaluador parcial toma un programa y sólo una parte de sus datos de entrada (los llamados datos estáticos) e intenta llevar a cabo todas las computaciones que sean posibles a partir de tales datos. El evaluador parcial devuelve un programa nuevo, denominado programa residual el cual se ejecuta generalmente de manera más e ciente que el programa original, ya que las computaciones que dependen de los datos estáticos se han realizado en la fase de evaluación parcial de una vez y para siempre [JGS93]. La evaluación parcial es una técnica de optimización de programas basada en semántica la cual ha sido investigada dentro de diferentes paradigmas de programación y aplicada a una amplia variedad de lenguajes. También es conocida como una técnica de transformación de programas fuente-a-fuente para especializar programas con respecto a una parte de sus datos de entrada (por ello también es conocida como especialización de programas). La evaluación parcial ha sido intensamente aplicada en el área de la programación funcional [CD93, JGS93, Tur86] y en programaci ón lógica [Gal93, Kom82b, LS91, PP94], donde ésta es normalmente conocida como deducción parcial. También en lenguajes imperativos como C en [TBC+98], o aplicada a un subconjunto importante de C en [And92] donde reportan la primera implementación autoaplicable de evaluación parcial para un lenguaje imperativo. Y en lenguajes formales como Scheme en [Jør92a, Jør92b] donde generan compiladores a partir de intérpretes. Cuando tenemos un programa sólo con algunos de sus datos de entrada conocidos no podemos ejecutar el programa, sin embargo podemos optimizar el programa computando respuestas tanto como sea posible. La evaluación parcial es una técnica que permite la ejecución parcial de un programa [MS97]. === Arroyo Delgado, G. (2012). Evaluación Parcial Offline Dirigida por Narrowing: Técnicas de Optimización y Aplicaciones [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/17655 === Palancia