26.09.2013 Views

Transformation of Applicative Specifications into Imperative ...

Transformation of Applicative Specifications into Imperative ...

Transformation of Applicative Specifications into Imperative ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 8<br />

<strong>Specifications</strong><br />

This chapter describes the different RSL specifications made during the<br />

project. Not every specification is fully described. The purpose <strong>of</strong> the chapter<br />

is to give a good understanding <strong>of</strong> the specifications by describing the<br />

overall structures <strong>of</strong> the specifications and by showing representative snippets<br />

<strong>of</strong> the specifications.<br />

The transformer is developed using the RSL2Java tool, which can translate<br />

a subset RSL1 <strong>of</strong> RSL <strong>into</strong> Java. This RSL2Java tool is further described<br />

in Chapter 9.<br />

8.1 Overview <strong>of</strong> the Different <strong>Specifications</strong><br />

The main functionality <strong>of</strong> the transformer is the transformation from abstract<br />

syntax tree representation, AST, <strong>of</strong> an applicative specification <strong>into</strong> abstract<br />

syntax tree representation <strong>of</strong> a corresponding imperative specification, if the<br />

transformation is possible.<br />

In order to formally specify this transformation two specifications are<br />

necessary:<br />

1. A specification <strong>of</strong> the RSL AST, which is described in Section 8.2.<br />

2. A specification <strong>of</strong> the transformation, which is described in Section 8.3.<br />

In order to develop the actual transformer the RSL2Java tool is used to<br />

generate an executable Java program from the specifications. In order to be<br />

able to translate the specifications <strong>into</strong> Java using the RSL2Java tool, the<br />

specifications have to be written within RSL1. The specification <strong>of</strong> the RSL<br />

AST is written within RSL1, but the specification <strong>of</strong> the transformation is<br />

written within RSL. This means that the specification <strong>of</strong> the transformation<br />

has to be rewritten such that it is within the RSL1 subset. A description<br />

<strong>of</strong> how the transformer specification is translated <strong>into</strong> RSL1 can be found in<br />

Section 8.4.<br />

71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!