ABSTRACT
Building complex applications often requires putting together pieces of software or requirements that have not been made to work together in the first place. Thinking of a project with a high integrity kernel written in Ada, using a set of low level libraries and drivers written in C or C++, with a graphical interface done in Java and unit tests driven by python is not thinking of sciencefiction anymore. It's actual concrete and day-to-day work. Unfortunately, having all of these technologies talking to each other is not straightforward, and often requires a deep knowledge of both sides of the technology and extensive manual work.
In this tutorial, we'll first study how to interface directly Ada with native languages, such as C or C++. We'll then have a deep look at communications with languages running on virtual machines, such as Java, Python and the .NET framework. Finally, we'll see how Ada can be interfaced with an arbitrary language using a middleware solution, such as SOAP or CORBA We?ll see how the communication can be manually done using low level features and APIs, and how a substantial part of this process can be automated using high level binding generators.
Index Terms
- Multi-language programming with Ada
Recommendations
Embedded, hard, real-time systems with Ada
SIGAda '09: Proceedings of the ACM SIGAda annual international conference on Ada and related technologiesDevelopment of real-time systems is expensive and difficult, in part because of low-level languages that force developers to use facilities that are ad hoc, incomplete, and not portable. The Real-Time Systems Annex of Ada 2005 (along with the language ...
Multi-language programming with Ada
SIGAda '09Building complex applications often requires putting together pieces of software or requirements that have not been made to work together in the first place. Thinking of a project with a high integrity kernel written in Ada, using a set of low level ...
Introduction to Ada
SIGAda '09: Proceedings of the ACM SIGAda annual international conference on Ada and related technologiesLevel -- Beginner, but attendees should have some experience with a high-level programming language. This tutorial is designed for those who have some familiarity with a programming language, but who are new to Ada. In the morning, we will discuss the ...
Comments