Exploring Compile Time Caching of Explicit Queries in Programming Codes
Object oriented programming languages raised the level of abstraction by incorporating first class query constructs explicitly in the program codes. These query constructs allow programmers to express operations over collections as object queries and also provide optimal query execution utilizing query optimization strategies from domain of databases. However, when a query is repeated in the program, it is executed afresh. This paper presents an approach to reduce the run time execution of programs involving explicit queries by caching the results of repeated queries and incrementally maintaining the cached results. We propose determination of cache entries at compile time by performing the program analysis. We also describe the cache heuristics for determining which queries to cache.