[Next]

Vortex RTL Textual Description Grammar

The Cecil Group

Department of Computer Science and Engineering
University of Washington
Box 352350, Seattle, Washington 98195-2350
cecil@cs.washington.edu

This document describes the grammar for the textual form of the Vortex compiler's RTL intermediate language. This is the language used to communicate between the C++, Modula-3, Java, and Smalltalk front-ends and Vortex, and is also used to describe some Cecil primitives.

Warning: the RTL language was not designed from scratch, but rather evolved via accretion of features. It is slowly being reworked to make the operators more general and language-independent, but this process is not complete.

In our EBNF notation, vertical bars (|) are used to separate alternatives. Braces ({...}) surround strings that can be repeated zero or more times. Brackets ([...]) surround an optional string. Parentheses are used for grouping. Literal tokens are included in quotation marks ("...").