DIANA(ID:949/dia011)

Descriptive Intermediate Attributed Notation for Ada 


Descriptive Intermediate Attributed Notation for Ada. Goos & Wulf, CMU, Jan 1981. A de facto standard intermediate language for Ada programs. An attributed tree representation, with an abstract interface defined in IDL. Resulted from a merger of AIDA and TCOL.Ada.


People:
Structures:
Related languages
AIDA => DIANA   Evolution of
TCOL Ada => DIANA   Evolution of

References:
  • Butler, Kenneth J., G. Goos, and W.A. Wulf "(Draft Revised) Diana Reference Manual" Tartan Laboratories 1982 view details Abstract: This document is a draft revision of the Diana Reference Manual, an introduction to, and reference manual for, Diana, a Descriptive Intermediate Attributed Notation for Ada. Diana is an intermediate from of Ada programs. It is especially suitable for communication between the Front and Back Ends of an Ada compiler, but it is also suitable for use with other tools in an Ada programming environment. Diana resulted from a merger of the best properties of two earlier similar intermediate forms: TCOL and AIDA.
  • Evans, Arthur, Kenneth J. Butler, G. Goos, and W.A. Wulf "Diana Reference Manual" Tartan Laboratories Tech Report TL 83-4 1983 view details Abstract: This document describes Diana, a Descriptive Intermediate Attributed Notation for Ada, being both an introduction to, and reference manual for it. Diana is an intermediate from of Ada programs. Although the initial uses of this form were for communication between the Front and Back Ends of an Ada compiler, it is also intended to be suitable for use with other tools in an Ada programming environment. Diana resulted from a merger of the best properties of two earlier similar intermediate forms: TCOL and AIDA.
  • G.T. Goos et al, "DIANA An Intermediate Language for Ada", LNCS 161, Springer 1983. view details
  • McKinley, Kathryn and Carl F. Schaefer "(Draft Revised) Diana Reference Manual" Intermetrics, Inc. IR-MD-078 for Naval Research Laboratory 1986 view details Abstract: This is a draft revision of the Diana Reference Manual. Experience with Diana has revealed weaknesses both in the definition of Diana and in the Diana Reference Manual. This draft revision incorporates changes in both areas. Changes to the definition of Diana include 1- overhauling the representation of types and subtypes to accord better with the definition of subtypes in Ada, 2- "partitioning" the Diana so that any node or class (except the node void) is directly a member of no more than one class, 3- "hoisting" attributes to the highest appropriate, and 4- otherwise regularizing the nomenclature of classes, nodes, and attributes. Changes to the Diana Reference Maual include 1- separation of semantic specification from rationale, 2- systematic coverage of static semantics of Diana, 3- inclusion of hierarchical diagrams providing a pictorial representation of class-membership relations, 4- inclusion of several substantial examples, and 5- inclusion of a cross-reference index of nodes and attributes.