2003
DOI: 10.1007/3-540-44898-5_2
|View full text |Cite
|
Sign up to set email alerts
|

Modular Class Analysis with DATALOG

Abstract: datalog can be used to specify a variety of class analyses for object-oriented programs as variations of a common framework. In this framework, the result of analyzing a class is a set of datalog clauses whose least xpoint is the information analysed for. Modular class analysis of program fragments is then expressed as the resolution of open datalog programs. We provide a theory for the partial resolution of sets of open clauses and de ne a number of operators for reducing such open clauses.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
10
0

Year Published

2004
2004
2019
2019

Publication Types

Select...
6
1

Relationship

0
7

Authors

Journals

citations
Cited by 11 publications
(10 citation statements)
references
References 24 publications
0
10
0
Order By: Relevance
“…Modular analysis has received considerable attention in different programming paradigms, ranging from, e.g., logic programming [14,11,8] to object-oriented programming [22,6,19]. A general theoretical framework for modular abstract interpretation analysis was defined in [13], but most of the existing works regarding modular analysis have focused on specific analyses with particular properties and using more or less ad-hoc techniques.…”
Section: Discussionmentioning
confidence: 99%
“…Modular analysis has received considerable attention in different programming paradigms, ranging from, e.g., logic programming [14,11,8] to object-oriented programming [22,6,19]. A general theoretical framework for modular abstract interpretation analysis was defined in [13], but most of the existing works regarding modular analysis have focused on specific analyses with particular properties and using more or less ad-hoc techniques.…”
Section: Discussionmentioning
confidence: 99%
“…BDDs have recently been used in a number of program analyses such as predicate abstraction [5], shape analysis [36,59], class analyses of object-oriented programs [8] and, in particular, points-to analysis [7,60,61]. These analyses use BDD libraries directly, without additional abstraction to ease implementation.…”
Section: Related Workmentioning
confidence: 99%
“…4 in Line 6) is a generated unique identifier for a method; after that, the declaring class is specified, followed by the method's name, its visibility (default), an encoding of the method's modifiers using boolean values (omitted for brevity), the return type, the parameter types along with parameter annotations and the list of declared exceptions. 3 The analysis is specified as the visitor(Class) query in Listing 1.3 Line 10. The query identifies visitor classes that do not implement a visit method for every subtype of the annotation parameter, but which are marked with the @Visitor(Type) annotation.…”
Section: Data Model and Prolog Based Analysesmentioning
confidence: 99%
“…Many classical program analysis problems can be readily encoded into deductive frameworks [13] and various practical implementations have been stemmed based on such encodings. E.g., Besson and Jensen [3] discuss the implementation of a class analysis using Datalog.…”
Section: Related Workmentioning
confidence: 99%