Program Transformation with Stratego/XT

Saturday morning, 09:00-12:30, March 24, room: CP2 106

This tutorial gives an overview of techniques for program transformation, illustrated through the Stratego/XT program transformation system. We explain the general architecture of transformation systems, and how Stratego/XT is used to assemble such systems from components. We introduce a set of ready made components for Java transformation, and show how to program custom transformation components using Stratego. In particular, we show how to express local transformations using rewrite rules and strategies and how context-sensitive transformations can be expressed easily using dynamic rewrite rules. All techniques and language features are illustrated with implementations of transformations on Java programs, that show how to apply all introduced techniques in practice.


Beyond the Generators: Practical Techniques for Real-World Software Generation

Saturday afternoon, 14:00-18:00, March 24, room: CP2 106

Most of the available literature on software generation concentrates on how to build generators that transform specifications into code. Little is said about the following important peripheral issues:

This tutorial presents practical techniques for addressing these issues based on almost twenty years of experience with a complex, multi-language generation system.


Mobility, Ubiquity, and Security

Sunday, April 1, room: CP2 103

The European project Mobius develops the technology for establishing trust and security for Java-enabled global computers such as mobile telephone networks. Mobius uses the Proof-Carrying Code (PCC) paradigm to provide static guarantees for security and functional properties of code. Certificates can be produced and checked using various enabling technologies such as advanced type systems and logic-based reasoning. This tutorial will introduce participants to both the central security architecture of Mobius as well as type systems, logics, and tools that enable static verification of Java source and bytecode.

Brochure: MobiusTutorial.pdf


Valid HTML 4.01!