Fourth Stratego Users Day (SUD'03)

June 5, 2003

Utrecht University

Utrecht, The Netherlands


The last year was again a productive year for the Stratego/XT project.

The union of the Stratego and XT distributions was necessary to overcome the development deadlock caused by the introduction of concrete syntax. The autoxt package provides support for automake, dramatically reducing the size of makefiles. The introduction of the XTC transformation tool composition model makes it a piece of cake to glue together tools. Concrete syntax is now completely integrated in the Stratego compiler; the LEX/Transform.YetAnotherCompilerCompiler based parser has been replaced by an SDF parser. Rob Vermaas is developing a documentation generator for Stratego (and for other languages), which should make the use of the library and any Stratego sources much easier. Martin Bravenboer is currently cleaning up the XT packages. The 0.9 distribution builds smoothly at many platforms and the first binary distributions have been produced.

Lots of new applications were developed and existing applications were revamped to use the latest technology. The Tiger compiler was refactored to use autoxt and XTC. A partial evaluator was developed for the program transformation course at Utrecht University. Martin Bravenboer wrote a front-end package for Java and developed a set of XML tools including schema-based validation. Karina Olmos and Gordon Cichone are working on a compiler for Octave. A collaboration with Bernd Fischer from NASA Ames was initiated to work on optimization of code generated by their AutoBayes synthesis system.

A record number of theses based on Stratego related work were finished. At Utrecht University Lennart Swart wrote a Master's thesis on partial evaluation of scheme programs in Stratego. At the University of Amsterdam Merijn de Jonge defended his PhD thesis on software reuse with Stratego/XT as a case study. At Bergen University Otto Bagge and Karl-Trygve Kalleberg defended their master's theses on the design and implementation of CodeBoost, a domain-specific source-to-source optimizer for numeric programs in C++.

A number of papers were presented at conferences and workshops. At WRS'02 Karina Olmos presented Strategies for source to source constant propagation. At RTA'02 Eelco Visser presented Rewriting strategies for instruction selection. At GPCE'02 Eelco Visser presented Meta programming with concrete object syntax. Ralf Laemmel presented Strategic programming meets adaptive programming at AOSD'03.

Call for Participation

So it is high time to take stock at another Stratego Users Day. On Thursday June 5, 2003 we meet at Utrecht University so that everyone interested in Stratego can get up to date with current developments, and get an overview of ongoing activities. It is also a good opportunity for Master's students to see what is going on in the program transformation project.

Participation is free and includes lunch. Usually we go out for dinner at night, which is at your own expense. Please register as soon as possible so that we can make reservations for lunch and dinner by sending an email to If you are coming from outside and need accomodation, you can consult the list of recommended hotels of the department.


The meeting will be held at the Uithof campus of Utrecht University:

Room BBL-420
Buys Ballot Laboratorium
Princetonplein 5
3584 CC Utrecht
Directions -->


10:00 Tools (chair: Martin Bravenboer)

  • Transformation Tool Composition with XTC -- Eelco Visser (slides)
  • User-Defined Rules in CodeBoost -- Otto Bagge (slides)

11:00 (chair: Merijn de Jonge)

12:00 Lunch

13:30 Configuration and Deployment (chair: Eelco Dolstra)

14:00 XML (chair: Jurgen Vinju)

15:00 Break

15:15 Optimization (chair: Otto Bagge)

  • Compiling Octave -- Karina Olmos (slides)
  • Loop Optimization for AutoBayes -- Jozef Kruger (slides)
  • Core Simplification for the Helium Compiler -- Alan van Dam (slides)

Generation (chair: Eelco Visser)

  • Template-based Application Generation -- Jonne van Wijngaarden (slides)
  • MetaTiger -- Robert Anisko (slides)

17:30 Discussion

19:00 Dinner

  • In Café restaurant TOQUE TOQUE
    Oudegracht 138
    3511 AA Utrecht
    Tel: 030-2318787
    Fax: 030-2317610

Registered Participants

  1. Andres Loeh (UU) [lunch, not dinner]
  2. Akim Demaille (Epita) [lunch, dinner]
  3. Alan van Dam (UU) [lunch, not dinner]
  4. Alexey Rodriguez (UU) [lunch, not dinner]
  5. Armijn Hemel (UU) [lunch, not dinner]
  6. Arthur van Dam (UU) [lunch, not dinner]
  7. Clement Vasseur (Epita) [lunch, dinner]
  8. Dave Clarke (UU) [lunch, not dinner]
  9. Eelco Dolstra (UU) [lunch, dinner]
  10. Eelco Visser (UU) [lunch, dinner]
  11. Gordon Cichone (Dresden) [lunch, dinner]
  12. Johan Jeuring (UU) [after lunch, not dinner]
  13. Jonne van Wijngaarden (UU) [lunch, dinner]
  14. Jory van Zessen (UU) [lunch, not dinner]
  15. Jozef Kruger (UU) [lunch, dinner]
  16. Jurgen Vinju (CWI) [lunch, not dinner]
  17. Karina Olmos (UU) [lunch, dinner]
  18. Martin Bravenboer (UU) [lunch, dinner]
  19. Merijn de Jonge (TUE) [lunch, not dinner]
  20. Niels Janssen (UU) [lunch, not dinner]
  21. Otto Skrove Bagge (Bergen) [lunch, dinner]
  22. Robert Anisko (Epita) [lunch, dinner]
  23. Valentin David (Epita) [lunch, dinner]
  24. Wilco Niessen (UU) [until lunch, not dinner]

Important Dates

  • Deadline for registration: May 25, 2003
  • Users Day: June 5, 2003