Multi-Language Programming: The Challenge and Promise of Class-Level Interfacing

This paper describes work we have conducted in this context, allowing direct binding of Ada extensible tagged types with C++ classes. Motivated by extensions to the Ada typing system made as part of the very recent language standard revision, this work leverages the GCC multi-language infrastructure and implementation of the Itanium C++ ABI. We will first survey the issues and mechanisms related to basic inter-language operations, then present the interfacing challenges posed by modern object oriented features after a brief overview of the Ada, C++, and Javaobject models. We will continue with a description of our work on Ada/C++ class-level interfacing facilities, illustrated by an example.

Share

0 comments

AdaCore is a provider of commercial, open software solutions for Ada, a modern programming language designed for large, long-lived applications where reliability, efficiency and safety are absolutely critical.