Diana past, present, and future
DIANA is an intermediate representation of Ada programs that contains all the information of the source program along with the results of lexical, syntactic and static semantic analysis. DIANA is an abstract data type that does not imply any representation so DIANA does not constrain an implementation. While DIANA is not the only possible internal representation it is a generally useful one.
DIANA will continue to be a valuable interface for tools. Programming environments that support a DIANA interface will be able to add new tools easily and upgrade existing tools that use DIANA as their interface. DIANA is the first step towards an environment of ‘plug compatible’ tools.
KeywordsSemantic Attribute Parse Tree Source Program Intermediate Representation External Form
Unable to display preview. Download preview PDF.
- B. M. Brosgol, J. M. Newcomer, D. A. Lamb, D. Levine, M. D. Van Deusen, and W. A. Wulf. TCOL Ada: Revised Report on an Intermediate Representation for the Preliminary Ada Language. Technical Report CMU-CS-80-105. Carnegie-Mellon University, Computer Science Department, February, 1980.Google Scholar
- G. Goos, W. A. Wulf, A. Evans Jr and K. J. Butler (editors). DIANA, An Intermediate Language for Ada (Revised version) Lecture Notes in Computer Science No. 161. Springer-Verlag (Berlin, Heidelberg, New York, Tokyo) 1983.Google Scholar
- G. Goos and W. A. Wulf (editors). Diana Reference Manual Technical Report CMU-CS-81-101, Carnegie-Mellon University Computer Science Department. March, 1981.Google Scholar
- Formal Definition of the Ada Programming Language November 1980 edition, Honeywell, Inc., Cii Honeywell Bull, INRIA, 1980.Google Scholar
- J. R. Nestor, W. A. Wulf, D. A. Lamb. IDL — Interface Description Language: Formal Definition. Technical Report CMU-CS-81-139. Carnegie-Mellon University. Computer Science Department, June, 1982. Revision 3.Google Scholar
- G. Persch, G. Winterstein, M. Dausmann, S. Drossopoulou, G. Goos. AIDA Reference Manual Technical Report Nr. 39/80. Institut fuer Informatik II, Universitaet Karlsruhe, November, 1980.Google Scholar