next up previous contents index
Next: 2.3 Isolating Abstract Syntax Up: 2 Rational Previous: 2.1 The Computer Languages

2.2 Abstract Syntax

external

     An abstract syntax is a type system designed to give a natural representation of programs as typed trees. AS follows what was already done by Metal and SDF [8] (even if in SDF the abstract syntax is generated from a concrete syntax specification). This means that an abstract syntax is a set of basic types (also called phyla) with explicit type inclusion, together with a set of constructors (also called operators) that are defined by their signatures.

external Starting with an Example

Notice that this presentation of an abstract syntax, even if it was used at the very beginning of the Mentor project [4], was not directly used in Metal for some historical implementation reasons. In Metal, operators are defined only by the type of their sons, and phyla are defined as set of operators. This was a consequence of the table-driven design of Mentor, rather than a specification driven view. A table can be viewed as a way of encoding an abstract syntax [3].

external


next up previous contents index
Next: 2.3 Isolating Abstract Syntax Up: 2 Rational Previous: 2.1 The Computer Languages

Thierry Despeyroux
Fri May 16 15:24:06 MET DST 1997