Sts Bench

Software Transformation Systems
The goals of benchmarking Software Transformations Systems are:
  • Increase communication on a technical level between designers of these systems
  • Provide a quick overview of the languages and tools in this field to outsiders
  • Inform people such that they can select the tools that fit best with their requirements

Benchmark proposals:

A Tiger compiler has been proposed as a benchmark. Although compilation is not a profile of source transformation in general, such a benchmark would bring a number of typical features of STSs to the surface. Tiger is a small procedural language. Extensions to Tiger might include object-oriented and aspect-oriented features in order to benchmark other kinds of transformations.

Another proposal is to select some small subset of the desk calculator language that the Synthesizer Generator people defined. By starting out with such a small language, more people might get involved sooner in the benchmarking.

The next proposal: automated maintenance on a small subset of Cobol (MiniCobol?). Somebody would provide a highly trimmed down COBOL-like grammar, and we could then implement a number of very simple to reasonable complex maintenance jobs. For example:

    • Adding scope terminators to conditional and evaluate statements
    • A Y2K fix

Tiny Imperative Language: this is a very small imperative language with assignments, conditional, and loops. Should be possible to make very small transformation specifications for this one.