| The implementation of ada 2005 synchronized interfaces in the GNAT compiler |
| Full text |
Pdf
(393 KB)
|
| Source
|
Annual International Conference on Ada
archive
Proceedings of the 2005 annual ACM SIGAda international conference on Ada: The Engineering of Correct and Reliable Software for Real-Time & Distributed Systems using Ada and Related Technologies
table of contents
Atlanta, GA, USA
Pages: 41 - 48
Year of Publication: 2005
ISBN:1-59593-185-6
Also published in ...
|
|
Authors
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 2, Downloads (12 Months): 13, Citation Count: 0
|
|
|
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 akin to Java interfaces, and as such support inheritance of specification rather than inheritance of implementation. Ada 2005 interfaces apply as well to tasks and protected types, and provide a classification mechanism for concurrent programming that goes considerably beyond the capabilities of Java.This paper summarizes the implementation in the GNAT compiler of the various kinds of interfaces that relate to concurrent programming in Ada 2005 [1]. The implementation is efficient, and involves mostly modifications to the compiler front-end, with virtually minimal impact on run-time structures, beyond those that are in place to support regular interfaces. However, the implementation of interface operations as triggers in selective waits and asynchronous transfers of control proved to be surprisingly delicate and requires additional predefined primitive operations.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Ada Rapporteour Group. Annotated Ada Reference Manual with Technical Corrigendum 1 and Amendment 1 (Draft 13): Language Standard and Libraries. (Working Document on Ada 2005).
|
| |
2
|
S. Taft, R. A. Duff, and R. L. Brukardt and E. Ploedereder (Eds). Consolidated Ada Reference Manual with Technical Corrigendum 1. Language Standard and Libraries. ISO/IEC 8652:1995(E). Springer Verlag, 2000. ISBN: 3-540-43038-5.
|
| |
3
|
|
| |
4
|
E. International. C# Language Specification (2nd edition). Standard ECMA-334. Standardizing Information and Communication Systems, December, 2002.
|
| |
5
|
ISO/IEC. Programming Languages: C++ (1st edition). ISO/IEC 14882:1998(E). 1998.
|
| |
6
|
Ada Rapporteour Group. Abstract Interfaces to Provide Multiple Inheritance. Ada Issue 251. Available at http://www.ada-auth.org/cgi-bin/ cvsweb.cgi/AIs/AI-00251.TXT.
|
| |
7
|
Ada Rapporteour Group. Object.Operation Notation. Ada Issue 252, Available at http://www.ada-auth.org/ cgi-bin/cvsweb.cgi/AIs/AI-00252.TXT.
|
| |
8
|
Ada Rapporteour Group. Protected and Task Interfaces. Ada Issue 345, Available at http://www.ada-auth.org/cgi-bin/cvsweb.cgi/ AIs/AI-00345.TXT.
|
| |
9
|
Ada Rapporteour Group. Null Procedures. Ada Issue 348, Available at http://www.ada-auth.org/cgi-bin/ cvsweb.cgi/AIs/AI-00348.TXT.
|
| |
10
|
Ada Rapporteour Group. Single Task and Protected Objects Implementing Interfaces. Ada Issue 399. Available at http://www.ada-auth.org/cgi-bin/ cvsweb.cgi/AIs/AI-00399.TXT.
|
 |
11
|
|
| |
12
|
J. Miranda, E. Schonberg, G. Dismukes. The Implementation of Ada 2005 Interface Types in the GNAT Compiler. 10th International Conference on Reliable Software Technologies, Ada-Europe'2005, 20--24 June, York, UK.
|
| |
13
|
J. Miranda. A Detailed Description of the GNU Ada Run-Time. Free book available at http://www.iuma. ulpgc.es/users/jmiranda/gnat-rts/index.htm, 2002.
|
| |
14
|
Free Software Foundation. GNAT Sources Repository. http://www.gnu.org/software/gnat/gnat.html
|
| |
15
|
AdaCore. GNAT Academic Program. http://www.adacore.com/academic_overview.php
|
|