On the translation of relational queries into iterative programs
- 1 March 1989
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Database Systems
- Vol. 14 (1) , 1-27
- https://doi.org/10.1145/62032.62033
Abstract
This paper investigates the problem of translating set-oriented query specifications into iterative programs. The translation uses techniques of functional programming and program transformation. We present two algorithms that generate iterative programs from algebra-based query specifications. The first algorithm translates query specifications into recursive programs. Those are simplified by sets of transformation rules before the algorithm generates the final iterative form. The second algorithm uses a two-level translation that generates iterative programs faster than the first algorithm. On the first level a small set of transformation rules performs structural simplification before the functional combination on the second level yields the final iterative form.Keywords
This publication has 17 references indexed in Scilit:
- The promotion and accumulation strategies in transformational programmingACM Transactions on Programming Languages and Systems, 1984
- Recursion As an Effective Step in Program DevelopmentACM Transactions on Programming Languages and Systems, 1984
- An implementation technique for database query languagesACM Transactions on Database Systems, 1982
- What is a model of the lambda calculus?Information and Control, 1982
- Confluent Reductions: Abstract Properties and Applications to Term Rewriting SystemsJournal of the ACM, 1980
- Can programming be liberated from the von Neumann style?Communications of the ACM, 1978
- A Transformation System for Developing Recursive ProgramsJournal of the ACM, 1977
- System RACM Transactions on Database Systems, 1976
- A system which automatically improves programsActa Informatica, 1976
- A relational model of data for large shared data banksCommunications of the ACM, 1970