Altering Java semantics via bytecode manipulation

É Tanter, M Ségura-Devillechaise, J Noyé… - International Conference …, 2002 - Springer
É Tanter, M Ségura-Devillechaise, J Noyé, J Piquer
International Conference on Generative Programming and Component Engineering, 2002Springer
Altering the semantics of programs has become of major interest. This is due to the necessity
of adapting existing software, for instance to achieve interoperability between off-the-shelf
components. A system allowing such alterations should operate at the bytecode level in
order to preserve portability and to be useful for pieces of software whose source code is not
available. Furthermore, working at the bytecode level should be done while keeping high-
level abstractions so that it can be useful to a wide audience. In this paper, we present …
Abstract
Altering the semantics of programs has become of major interest. This is due to the necessity of adapting existing software, for instance to achieve interoperability between off-the-shelf components. A system allowing such alterations should operate at the bytecode level in order to preserve portability and to be useful for pieces of software whose source code is not available. Furthermore, working at the bytecode level should be done while keeping high-level abstractions so that it can be useful to a wide audience. In this paper, we present Jinline, a tool that operates at load time through bytecode manipulation. Jinline makes it possible to inline a method body before, after, or instead of occurrences of language mechanisms within a method. It provides appropriate high-level abstractions for fine-grained alterations while offering a good expressive power and a great ease of use.
Springer
Showing the best result for this search. See all results