Title of article
Transformation of structure-shy programs with application to XPath queries and strategic functions
Author/Authors
Alcino Cunha، نويسنده , , Joost Visser، نويسنده ,
Issue Information
ماهنامه با شماره پیاپی سال 2011
Pages
24
From page
516
To page
539
Abstract
Various programming languages allow the construction of structure-shy programs. Such programs are defined generically for many different datatypes and only specify specific behavior for a few relevant subtypes. Typical examples are XML query languages that allow selection of subdocuments without exhaustively specifying intermediate element tags. Other examples are languages and libraries for polytypic or strategic functional programming and for adaptive object-oriented programming.In this paper, we present an algebraic approach to transformation of declarative structure-shy programs, in particular for strategic functions and XML queries. We formulate a rich set of algebraic laws, not just for transformation of structure-shy programs, but also for their conversion into structure-sensitive programs and vice versa. We show how subsets of these laws can be used to construct effective rewrite systems for specialization, generalization, and optimization of structure-shy programs. We present a type-safe encoding of these rewrite systems in Haskell which itself uses strategic functional programming techniques. We discuss the application of these rewrite systems for XPath query optimization and for query migration in the context of schema evolution.
Keywords
Algebraic program transformation , XML query languages , Point-free program calculation , Type specialization , Type generalization , Strategic functional programming
Journal title
Science of Computer Programming
Serial Year
2011
Journal title
Science of Computer Programming
Record number
1080192
Link To Document