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 6. TRANSFORMATIONS<br />

Value Infix Expressions<br />

A value infix expression has the following form:<br />

value_expr1 infix_op value_expr2<br />

A value infix expression is transformed by transforming the constituent<br />

value expressions. The infix operator stays the same.<br />

Value Prefix Expressions<br />

A value prefix expression has the following form:<br />

prefix_op value_expr<br />

A value prefix expression is transformed by transforming the constituent<br />

value expression. The prefix operator stays the same.<br />

Let Expressions<br />

A let expression takes the following form:<br />

let<br />

letbinding1 = value_expr1,<br />

.<br />

letbindingn = value_exprn<br />

in<br />

value_exprn+1<br />

end<br />

A let expression is transformed by transforming the constituent value<br />

expressions. Furthermore, the let bindings have to be transformed in order<br />

to comply with the return values <strong>of</strong> the corresponding value expressions.<br />

The reason for this is that in the imperative specification generators do not<br />

return values <strong>of</strong> the type <strong>of</strong> interest. There are three cases to consider when<br />

dealing with a let expression <strong>of</strong> the form:<br />

let<br />

letbinding = value_expr<br />

in<br />

...<br />

end<br />

46

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

Saved successfully!

Ooh no, something went wrong!