ACM Home Page
Please provide us with feedback. Feedback
Jedd: a BDD-based relational extension of Java
Full text PdfPdf (137 KB)
Source Conference on Programming Language Design and Implementation archive
Proceedings of the ACM SIGPLAN 2004 conference on Programming language design and implementation table of contents
Washington DC, USA
SESSION: Pointer analysis and BDDs table of contents
Pages: 158 - 169  
Year of Publication: 2004
ISBN:1-58113-807-5
Also published in ...
Authors
Ondřej Lhoták  McGill University, Montreal, Canada
Laurie Hendren  McGill University, Montreal, Canada
Sponsors
ACM: Association for Computing Machinery
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 47,   Citation Count: 23
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

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

ABSTRACT

In this paper we present Jedd, a language extension to Java that supports a convenient way of programming with Binary Decision Diagrams (BDDs). The Jedd language abstracts BDDs as database-style relations and operations on relations, and provides static type rules to ensure that relational operations are used correctly.The paper provides a description of the Jedd language and reports on the design and implementation of the Jedd translator and associated runtime system. Of particular interest is the approach to assigning attributes from the high-level relations to physical domains in the underlying BDDs, which is done by expressing the constraints as a SAT problem and using a modern SAT solver to compute the solution. Further, a runtime system is defined that handles memory management issues and supports a browsable profiling tool for tuning the key BDD operations.The motivation for designing Jedd was to support the development of whole program analyses based on BDDs, and we have used Jedd to express five key interrelated whole program analyses in our Soot compiler framework. We provide some examples of this application and discuss our experiences using Jedd.


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
D. M. Beazley. SWIG: An easy to use tool for integrating scripting languages with C and C++. In Proceedings of the 4th USENIX Tcl/Tk Workshop, pages 129--139, July 1996.
 
3
Gerd Behrmann. The interactive BDD environment. http://iben.sourceforge.net/.
 
4
5
 
6
7
8
 
9
10
 
11
 
12
 
13
Ondřej Lhoták and Laurie Hendren. Jedd: A BDD-based relational extension of Java. Technical Report 2003-7, McGill University, Sable Research Group, 2003.
 
14
Jorn Lind-Nielsen. BuDDy, A Binary Decision Diagram Package. Department of Information Technology, Technical University of Denmark, http://www.itu.dk/research/buddy/.
 
15
 
16
Erik Meijer and Wolfram Schulte. Unifying tables, objects, and documents. In Workshop on Declarative Programming in the Context of Object-Oriented Languages, pages 145--166, August 2003.
 
17
18
19
 
20
Marcus Nilsson. GBDD - A package for representing relations with BDDs. http://user.it.uu.se/-~marcusn/projects/rmc/docs/gbdd/index.html.
 
21
N. Nystrom, M. R. Clarkson, and A. C. Myers. Polyglot: An extensible compiler framework for Java. In 12th International Conference on Compiler Construction, volume 2622 of LNCS, pages 138--152, 2003.
22
 
23
24
 
25
Fabio Somenzi. CUDD: CU Decision Diagram Package. Department of Electrical and Computer Engineering, University of Colorado at Boulder, http://vlsi.colorado.edu/~fabio/CUDD/.
 
26
Arash Vahidi. Arash's Java interface to BDDs. http://www.chl.chalmers.se/~vahidi/bdd/bdd.html.
 
27
 
28
John Whaley. JavaBDD - Java binary decision diagram library. http://javabdd.sourceforge.net/.
29
 
30
 
31
32

CITED BY  23

Collaborative Colleagues:
Ondřej Lhoták: colleagues
Laurie Hendren: colleagues