Skip to main content

The DIANA interfacer

  • Conference paper
  • First Online:
Ada Software Tools Interfaces

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 180))

  • 140 Accesses

Abstract

DIANA is a high-level, intermediate form which captures concisely the important aspects of Ada* and enables a variety of tools to share a consistent view of the database alleviating the need to duplicate the effort of parsing and semantic analysis of an Ada source program. DIANA can serve as an input language to a variety of tools. It may not. however, be the best intermediate representation within a particular tool. The DIANA representation may need to be augmented by additional attributes or to be organized into a slightly different structure in order to facilitate the major processing algorithms of a given tool.

We believe this process of tailoring the intermediate representation can and should be formalized and automated. A formalized description for the intermediate language may be modified by temporary attributes specialized for the tool at hand. The tree transformation process to take the common representation and create a tailored representation should be generated automatically. The tool builder then has an intermediate form tailored exactly to his need with a minimum of effort. All of the advantages of a common representation still pertain, with each tool maintaining a consistent view of the intermediate language database. The external view of the data is shared while the internal view is tailored to facilitate processing.

This paper describes the DIANA Interfacer — an attribute grammar based tool for tailoring views of DIANA. The DIANA Interfacer is built around an attribute grammar representation of DIANA developed at SDC. It permits the user to specify only the DIANA nodes that are to be changed and the rules for evaluating new attributes. The DIANA Interfacer produces three outputs:

  1. 1)

    Ada source implementing the front-end of the user tool. This front-end accepts DIANA as input and produces a modified tree tailored to the processing needs of the tool.

  2. 2)

    an Ada package (both specification and body) for accessing the modified tree

  3. 3)

    dump and debug facilities.

The DIANA Interfacer is knowledgeable about a DIANA attribute grammar. It tailors this grammar and invokes SSAGS — an attribute grammar system developed at SDC. The Interfacer enables the user to enjoy the advantages of an attribute grammar approach for transforming trees without having to be cognizant of all the details of an attribute grammar. The user maintains the high level concept of tailoring his representation and an implementation of the tailoring transformation is automatically generated.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

5. References

  1. G. Goos, W. 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 

  2. P. Wallis. Towards the Design of a Toolset for Manipulating Ada Packages. Ada-Europe/AdaTEC Symposium. March 1983.

    Google Scholar 

  3. STONEMAN, Requirements for Ada Programming Support Environments. DARPA. February 1980.

    Google Scholar 

  4. B. Brosgol. Design and Implementation of DIANA — Descriptive Intermediate Notation for Ada. Proceedings of the International Workshop on High-level Language Computer Architecture. Deceember 1982.

    Google Scholar 

  5. T.Payton, S. Keller, J. Perkins, S. Rowan, S. Mardinly. SSAGS: A Syntax and Semantics Analysis and Generation System. Proceedings of COMPSAC '82. November 1982.

    Google Scholar 

  6. P. Lewis, R Stearns. Syntax-Directed Transduction. Journal of the ACM, 15,3. July 1968.

    Google Scholar 

  7. J. Nestor, W. Wulf, D. Lamb. IDL — Interface Description Language. Draft Revision 2.0. June 1982.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Peter J. L. Wallis

Rights and permissions

Reprints and permissions

Copyright information

© 1984 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Payton, T., Keller, S., Perkins, J., Mardinly, S. (1984). The DIANA interfacer. In: Wallis, P.J.L. (eds) Ada Software Tools Interfaces. Lecture Notes in Computer Science, vol 180. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-13878-1_8

Download citation

  • DOI: https://doi.org/10.1007/3-540-13878-1_8

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-13878-5

  • Online ISBN: 978-3-540-39071-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics