Bytecode rewriting in Tom

Emilie Balland 1 Pierre-Etienne Moreau 1 Antoine Reilles 1
1 PROTHEO - Constraints, automatic deduction and software properties proofs
INRIA Lorraine, LORIA - Laboratoire Lorrain de Recherche en Informatique et ses Applications
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.
Document type :
Conference papers
Complete list of metadatas

Cited literature [10 references]  Display  Hide  Download

https://hal.inria.fr/inria-00129513
Contributor : Emilie Balland <>
Submitted on : Wednesday, February 7, 2007 - 5:12:45 PM
Last modification on : Thursday, January 11, 2018 - 6:19:58 AM
Long-term archiving on : Friday, September 21, 2012 - 11:13:11 AM

File

bytecode.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : inria-00129513, version 1

Collections

Citation

Emilie Balland, Pierre-Etienne Moreau, Antoine Reilles. Bytecode rewriting in Tom. Second Workshop on Bytecode Semantics, Verification, Analysis and Transformation - BYTECODE 07, Mar 2007, Braga, Portugal. pp.19-33. ⟨inria-00129513⟩

Share

Metrics

Record views

331

Files downloads

259