Skip to main content

The Implementation of Ada 2005 Interface Types in the GNAT Compiler

  • Conference paper
Reliable Software Technology – Ada-Europe 2005 (Ada-Europe 2005)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 3555))

Included in the following conference series:

Abstract

One of the most important object-oriented features of the new revision of the Ada Programming Language is the introduction of Abstract Interfaces to provide a form of multiple inheritance. Ada 2005 Abstract Interface Types are based on Java interfaces, and as such support inheritance of operation specifications, rather than the general complexity of inheritance of implementations as in full multiple inheritance. Real-time uses of Ada demand efficient and bounded worst-case execution time for interface calls. In addition, modern systems require mixed-language programming. This paper summarizes part of the work done by the GNAT Development Team to provide an efficient implementation of this language feature and simplifies interfacing with C++.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ada Rapporteur Group (ARG). Abstract interfaces to provide multiple inheritance. Ada Issue 251, http://www.ada-auth.org/cgi-bin/cvsweb.cgi/AIs/AI-00251.TXT

  2. Ada Rapporteur Group (ARG). Null procedures. Ada (348), http://www.adaauth.org/cgi-bin/cvsweb.cgi/AIs/AI-00348.TXT

  3. Alpern, B., Cocchi, A., Fink, S., Grove, D., Lieber, D.: Efficient Implementation of Java Interfaces: Invokeinterface Considered Harmless. In: Proceedings of the Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2001). ACM Press, New York (2001), http://www.research.ibm.com/jalapeno/publication.html

    Google Scholar 

  4. CodeSourcery, Compaq, EDG, HP, IBM, Intel, Red Hat, and SGI. Itanium C++ ABI. Technical Report Revision 1.75 (2004), http://www.codesourcery.com.prev/cxx-abi

  5. Driesen, K.: Software and Hardware Techniques for Efficient Polymorphic Calls. University of California, Santa Barbara (PhD Dissertation), TRCS99-24 (June 1999)

    Google Scholar 

  6. Gosling, J., Joy, B., Steele, G., Bracha, G.: The Java Language Specification, 2nd edn. Addison-Wesley, Reading (2000)

    Google Scholar 

  7. Intermetrics Inc and the MITRE Corporation. Annotated Ada Reference Manual with Technical Corrigendum 1. Language Standard and Libraries. ISO/IEC 8652:1995(E) (2000), http://www.ada-auth.org/arm-files/AARM.PDF

  8. ECMA International. C# Language Specification— Standard ECMA-334 (2nd edn.). Standardizing Information and Communication Systems (December 2002)

    Google Scholar 

  9. Sun MicroSystems. Java 2 Platform, Standard Edition, J2SE 5.0 (2004), Available at http://java.sun.com/j2se/

  10. Miranda, J., Schonberg, E.: GNAT: On the Road to Ada 2005. In: ACM SigAda 2004 (November 2004)

    Google Scholar 

  11. Palacz, K., Vitek, J.: Java Subtype Tests in Real-Time. In: Proceedings of the European Conference on Object-Oriented Programming (2003), http://citeseer.ist.psu.edu/660723.html

  12. Vitek, J., Horspoo, R.N., Krall, A.: Efficient Type Inclusion Tests. In: Proceedings of the Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 1997). ACM Press, New York (1997), http://citeseer.ist.psu.edu/vitek97efficient.html

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Miranda, J., Schonberg, E., Dismukes, G. (2005). The Implementation of Ada 2005 Interface Types in the GNAT Compiler. In: Vardanega, T., Wellings, A. (eds) Reliable Software Technology – Ada-Europe 2005. Ada-Europe 2005. Lecture Notes in Computer Science, vol 3555. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11499909_17

Download citation

  • DOI: https://doi.org/10.1007/11499909_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-26286-2

  • Online ISBN: 978-3-540-31666-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics