Abstract: In this work, we propose an extensible programming framework, named
Xevolver. The framework exposes an abstract syntax tree (AST) in an XML
data format to programmers. Hence, the programmers can adopt various
XML-related technologies to transform, analyze, and visualize the
application code. In this work, we use XSLT to define custom compiler
directives for application-specific code transformations. By
incrementally inserting the user-defined directives, a real application
can be migrated to another system without significantly modifying the
original code, because custom code translation rules are written in an
external XSLT file. We can change the behaviors of user-defined
directives for individual systems by changing XSLT rules in the external
file. Accordingly, we can evolutionarily improve the application so as
to have a high performance portability without messing up the original
code.