Making the future safe for the past: adding genericity to the Java programming language
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Practical virtual method call resolution for Java
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A framework for call graph construction algorithms
ACM Transactions on Programming Languages and Systems (TOPLAS)
The C++ Programming Language
Interprocedural Control Flow Analysis
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
On Variance-Based Subtyping for Parametric Types
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Efficient Implementation of Run-time Generic Types for Java
Proceedings of the IFIP TC2/WG2.1 Working Conference on Generic Programming
Fast and Effective Optimization of Statically Typed Object-Oriented
Fast and Effective Optimization of Statically Typed Object-Oriented
Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))
Java(TM) Language Specification, The (3rd Edition) (Java (Addison-Wesley))
Variant parametric types: A flexible subtyping scheme for generics
ACM Transactions on Programming Languages and Systems (TOPLAS)
The cost of erasure in Java generics type system
Journal of Computing Sciences in Colleges
Precise static type analysis for object oriented programs
ACM SIGPLAN Notices
An Efficient, Parametric Fixpoint Algorithm for Analysis of Java Bytecode
Electronic Notes in Theoretical Computer Science (ENTCS)
Sawja: static analysis workshop for java
FoVeOOS'10 Proceedings of the 2010 international conference on Formal verification of object-oriented software
Taming the wildcards: combining definition- and use-site variance
Proceedings of the 32nd ACM SIGPLAN conference on Programming language design and implementation
Hi-index | 0.00 |
Genericity enriched with multiple data types and classes is becoming a common feature of object oriented languages. Therefore, static analysis of such generic programs is gaining importance. Unfortunately such work does not exist. In this work, we statically analyse such generic programs for approximating the possible dynamic (run-time) types of objects. We propose a single pass technique for analyzing the generic programs inter-procedurally statement-wise following the control flow of the execution. The technique is able to resolve the covariance, contravariance and invariance relationship existing amongst different instances with type parameters as arguments to a class. We assess the performance of the proposed technique by carrying out experiments on a set of standard benchmark programs