Abstract | ||
---|---|---|
In this paper, we present a term rewriting based library for manipulating Java bytecode. We define a mapping from bytecode programs to algebraic terms, and we use Tom, an extension of Java that adds pattern-matching facilities, to describe transformations. An originality of Tom is that it provides a powerful strategy language to express traversals over trees and to control how transformation rules are applied. To be even more expressive, we use CTL formulae as conditions and we show how their satisfiability can be ensured using the strategy formalism. Through small examples, we show how bytecode analysis and transformations can be defined in an elegant way. In particular, we outline the implementation of a ClassLoader parameterized by a security policy that restricts file access. |
Year | DOI | Venue |
---|---|---|
2007 | 10.1016/j.entcs.2007.02.058 | Electr. Notes Theor. Comput. Sci. |
Keywords | Field | DocType |
bytecode program,file access,transformation rule,powerful strategy language,term rewriting,tom,ctl formula,java bytecode,strategy formalism,bytecode analysis,bytecode rewriting,security policy,small example,ctl,pattern matching,satisfiability | Parameterized complexity,Programming language,Computer science,Satisfiability,Theoretical computer science,Java bytecode,Rewriting,Security policy,Formalism (philosophy),Java,Bytecode | Journal |
Volume | Issue | ISSN |
190 | 1 | Electronic Notes in Theoretical Computer Science |
Citations | PageRank | References |
3 | 0.42 | 5 |
Authors | ||
3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Emilie Balland | 1 | 233 | 14.22 |
Pierre-etienne Moreau | 2 | 598 | 40.40 |
Antoine Reilles | 3 | 119 | 6.79 |