ACM Home Page
Please provide us with feedback. Feedback
Relational programming with CrocoPat
Full text PdfPdf (164 KB)
Source International Conference on Software Engineering archive
Proceedings of the 28th international conference on Software engineering table of contents
Shanghai, China
DEMONSTRATION SESSION: Informal tool demonstrations table of contents
Pages: 807 - 810  
Year of Publication: 2006
ISBN:1-59593-375-1
Author
Dirk Beyer  Ecole Polytechnique Fédérale de Lausanne, Lausanne, Switzerland
Sponsors
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 42,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1134285.1134420
What is a DOI?

ABSTRACT

Many structural analyses of software systems are naturally formalized as relational queries, for example, the detection of design patterns, patterns of problematic design, code clones, dead code, and differences between the as-built and the as-designed architecture. This paper describes CrocoPat, an application-independent tool for relational programming. Through its efficiency and its expressive language, CrocoPat enables practically important analyses of real-world software systems that are not possible with other graph analysis tools, in particular analyses that involve transitive closures and the detection of patterns in graphs. The language is easy to use, because it is based on the well-known first-order predicate logic. The tool is easy to integrate into other software systems, because it is a small command-line tool that uses a simple text format for input and output of relations.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
3
 
4
5
 
6
 
7
D. Beyer and A. Noack. Crocopat 2.1 Introduction and reference manual. Technical Report CSD-04-1338, University of California, Berkeley, 2004.
 
8
 
9
 
10
 
11
 
12
13
 
14
 
15
 
16
 
17
 
18
19
20
 
21
22
 
23
 
24
 
25
26
 
27
A. O. Mendelzon and J. Sametinger. Reverse engineering by visualizing and querying. Software -- Concepts and Tools, 16(4):170--182, 1995.
 
28
 
29
30
 
31
32
 
33
34
 
35
 
36
F. Shull, W. L. Melo, and V. R. Basili. An inductive method for discovering design patterns from object-oriented software systems. Technical Report CS-TR-3597, University of Maryland, 1996.
 
37
Swedish Institute of Computer Science. Quintus Prolog User's Manual, 2003.
 
38
 
39
 
40
K. Wong. Rigi User's Manual, Version 5.4.4, 1998.