HOME

TheInfoList



OR:

DIANA, the Descriptive Intermediate Attributed Notation for Ada, is an
intermediate language An intermediate representation (IR) is the data structure or code used internally by a compiler or virtual machine to represent source code. An IR is designed to be conducive to further processing, such as optimization and translation. A "good" ...
used to represent the semantics of an
Ada Ada may refer to: Places Africa * Ada Foah, a town in Ghana * Ada (Ghana parliament constituency) * Ada, Osun, a town in Nigeria Asia * Ada, Urmia, a village in West Azerbaijan Province, Iran * Ada, Karaman, a village in Karaman Province, Tu ...
program. It was originally designed as an interface between the front end (syntactic analysis) and middle (semantic analysis) of the compiler on the one hand and the back end (code generation and optimization) on the other. It is also used as an internal representation by other language tools. DIANA is also used by
PL/SQL PL/SQL (Procedural Language for SQL) is Oracle Corporation's procedural extension for SQL and the Oracle relational database. PL/SQL is available in Oracle Database (since version 6 - stored PL/SQL procedures/functions/packages/triggers since ...
, which is based on Ada. DIANA is an abstract data type; its concrete implementations are defined using the
IDL specification language IDL (''Interface Description Language'') is a software interface description language (also referred to as Interface Descriptor Language) created by William Wulf and John Nestor of Carnegie Mellon University Carnegie Mellon University (CMU) ...
. DIANA descends from TCOL and
AIDA ''Aida'' (or ''Aïda'', ) is an opera in four acts by Giuseppe Verdi to an Italian libretto by Antonio Ghislanzoni. Set in the Old Kingdom of Egypt, it was commissioned by Cairo's Khedivial Opera House and had its première there on 24 Decemb ...
, earlier representations of Ada programs. The Ada-0 subset of Ada at Karlsruhe (1980) was first using AIDA, but later AIDA got replaced by DIANA. The full Karlsruhe Ada compilation system used DIANA as well and the IDL External Representation for marshalling between the middle-end and the code generating back-end.


References

* * DIANA Reference Manual, Draft Revision 4: http://www.dtic.mil/dtic/tr/fulltext/u2/a272792.pdf Programming language implementation Ada (programming language) {{prog-lang-stub