Maintaining views incrementally
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Incremental maintenance of views with duplicates
SIGMOD '95 Proceedings of the 1995 ACM SIGMOD international conference on Management of data
Generating data integration mediators that use materialization
Journal of Intelligent Information Systems - Special issue on intelligent integration of information
Static caching for incremental computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Incremental materialization of object-oriented views
Data & Knowledge Engineering
Incremental view maintenance in object-oriented databases
ACM SIGMIS Database
Some Observations Concerning Formal Differentiation of Set Theoretic Expressions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Finite Differencing of Computable Expressions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Experience with the SETL Optimizer
ACM Transactions on Programming Languages and Systems (TOPLAS)
Incremental computation of complex object queries
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Dynamic weaving for aspect-oriented programming
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Incremental Recomputation of Active Relational Expressions
IEEE Transactions on Knowledge and Data Engineering
An Improved Algorithm for the Incremental Recomputation of Active Relational Expressions
IEEE Transactions on Knowledge and Data Engineering
IEEE Transactions on Knowledge and Data Engineering
Just-in-time aspects: efficient dynamic weaving for Java
Proceedings of the 2nd international conference on Aspect-oriented software development
Deriving Production Rules for Incremental View Maintenance
VLDB '91 Proceedings of the 17th International Conference on Very Large Data Bases
Incremental Updates for Materialized OQL Views
DOOD '97 Proceedings of the 5th International Conference on Deductive and Object-Oriented Databases
Induction variables in very high level languages
POPL '76 Proceedings of the 3rd ACM SIGACT-SIGPLAN symposium on Principles on programming languages
MOVIE: an incremental maintenance system for materialized object views
Data & Knowledge Engineering
Incrementalization across object abstraction
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Core role-based access control: efficient implementations by transformations
Proceedings of the 2006 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
An experimental analysis of self-adjusting computation
Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation
LINQ: reconciling object, relations and XML in the .NET framework
Proceedings of the 2006 ACM SIGMOD international conference on Management of data
Efficient implementation of tuple pattern based retrieval
Proceedings of the 2007 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
DITTO: automatic incrementalization of data structure invariant checks (in Java)
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
A transformational framework for the automatic control of derived data
VLDB '81 Proceedings of the seventh international conference on Very Large Data Bases - Volume 7
Caching and incrementalisation in the java query language
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Automatic incrementalization of queries in object-oriented programs
Automatic incrementalization of queries in object-oriented programs
A local algorithm for incremental evaluation of tabled logic programs
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
Efficient object querying for java
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
A language and framework for invariant-driven transformations
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
Composing transformations for instrumentation and optimization
PEPM '12 Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation
From clarity to efficiency for distributed algorithms
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
Reactive behavior in object-oriented applications: an analysis and a research roadmap
Proceedings of the 12th annual international conference on Aspect-oriented software development
Hi-index | 0.00 |
High-level query constructs help greatly improve the clarity of programs and the productivity of programmers, and are being introduced to increasingly more languages. However, the use of high-level queries in programming languages can come at a cost to program efficiency, because these queries are expensive and may be computed repeatedly on slightly changed inputs. For efficient computation in practical applications, a powerful method is needed to incrementally maintain query results with respect to updates to query parameters. This paper describes a general and powerful method for automatically generating incremental implementations of high-level queries over objects and sets in object-oriented programs, where a query may contain arbitrary set enumerators, field selectors, and additional conditions. The method can handle any update to object fields and addition and removal of set elements, and generate coordinated maintenance code and invocation mechanisms to ensure that query results are computed correctly and efficiently. Our implementation and experimental results for example queries and updates confirm the effectiveness of the method.