The promotion and accumulation strategies in transformational programming
ACM Transactions on Programming Languages and Systems (TOPLAS) - Lecture notes in computer science Vol. 174
Rule-based transformation of relational queries into iterative programs
SIGMOD '86 Proceedings of the 1986 ACM SIGMOD international conference on Management of data
An implementation technique for database query languages
ACM Transactions on Database Systems (TODS)
System R: relational approach to database management
ACM Transactions on Database Systems (TODS)
The design and implementation of INGRES
ACM Transactions on Database Systems (TODS)
A Transformation System for Developing Recursive Programs
Journal of the ACM (JACM)
Recursion As an Effective Step in Program Development
ACM Transactions on Programming Languages and Systems (TOPLAS)
Communications of the ACM
The denotational semantics of programming languages
Communications of the ACM
A relational model of data for large shared data banks
Communications of the ACM
Principles of Database Systems
Principles of Database Systems
An architecture for query optimization
SIGMOD '82 Proceedings of the 1982 ACM SIGMOD international conference on Management of data
Rewriting systems on FP expressions that reduce the number of sequences they yield
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
Schema recognition for program transformations
LFP '84 Proceedings of the 1984 ACM Symposium on LISP and functional programming
POPL '76 Proceedings of the 3rd ACM SIGACT-SIGPLAN symposium on Principles on programming languages
Concurrent algorithms for search structures (parallel, database)
Concurrent algorithms for search structures (parallel, database)
Translating relational queries into iterative programs (transformation, evaluation)
Translating relational queries into iterative programs (transformation, evaluation)
Rule-based optimization and query processing in an extensible geometric database system
ACM Transactions on Database Systems (TODS)
Query evaluation techniques for large databases
ACM Computing Surveys (CSUR)
The deductive synthesis of database transactions
ACM Transactions on Database Systems (TODS)
How to Comprehend Queries Functionally
Journal of Intelligent Information Systems - Special issue on functional approach to intelligent information systems
Synthesizing Database Transactions
VLDB '90 Proceedings of the 16th International Conference on Very Large Data Bases
Extended Query Answering Using Integrity Rules
ISMIS '00 Proceedings of the 12th International Symposium on Foundations of Intelligent Systems
A Framework for Automating Physical Database Design
VLDB '91 Proceedings of the 17th International Conference on Very Large Data Bases
Algebraic query optimisation for database programming languages
The VLDB Journal — The International Journal on Very Large Data Bases
Supporting procedural constructs in existing SQL compilers
CASCON '96 Proceedings of the 1996 conference of the Centre for Advanced Studies on Collaborative research
Steno: automatic optimization of declarative queries
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
New algorithms for join and grouping operations
Computer Science - Research and Development
Just-in-time compilation for SQL query processing
Proceedings of the VLDB Endowment
Hi-index | 0.00 |
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.