Optimizing compilers for object-oriented languages apply static class analysis and other techniques to try to deduce precise information about the possible classes of the receivers...
When a software system enters the maintenance phase, the availability of accurate and consistent information about its organization can help alleviate the difficulties of program...
We introduce a new approach, called completeness analysis, to computing points-to sets for incomplete Java programs such as library modules or applications in the presence of dynam...
Code-patterns are statically recurring structure specific to a programming language. It can be parallel to aid in designing software systems for solving particular problems. Contr...
Dynamic program slicing is an effective technique for narrowing the errors to the relevant parts of a program when debugging. Given a slicing criterion, the dynamic slice contains...