Ada[1] est un langage de programmation conçu par l’équipe de CII-Honeywell Bull dirigée par Jean Ichbiah en réponse à un cahier des charges établi par le département de la Défense des États-Unis (DoD). Son développement a commencé au début des années 1980 pour donner Ada 83. Pour cela, l'équipe de Jean Ichbiah s'est inspirée de son précédent langage LIS (Langage d'Implémentation de Systèmes), conçu à la CII pour permettre le développement de systèmes d'exploitation portables (à 95%, disait Ichbiah).
Ada 83 a été ensuite repris et amélioré au milieu des années 1990 pour donner Ada 95, le premier langage objet normalisé de manière internationale. Sous les auspices de l’Organisation internationale de normalisation (ISO), le langage dispose maintenant d’une révision appelée Ada 2005.
Le nom Ada a été choisi en l’honneur d’Ada Lovelace, qui est supposée avoir écrit le premier programme de l’histoire. Il est associé à la couleur verte car, lors de l’appel d’offre du DoD, les différentes propositions étaient désignées par des couleurs pour éviter tout biais, et l’équipe qui l’a conçu était l’équipe verte.
Voici quelques particularités d’Ada :
typage statique,
module par les paquetages et contrôle fin de la visibilité
syntaxe claire et non ambiguë (inspirée de celle du langage Pascal),
généricité,
multi-tâche,
traits temps réel intégrés au langage (tâches, objets protégés, interruptions),
bibliothèques normalisées
liens avec les autres langages,
annexes temps réel avec le Profil Ravenscar pour les systèmes sûrs,
le document de la norme ISO est librement téléchargeable (voir ci-dessous).
Il est souvent utilisé dans des systèmes temps réel et embarqués nécessitant un haut niveau de fiabilité et de sécurité. De nos jours, Ada95 est employé bien sûr par son initiateur, mais aussi dans toutes les technologies de pointe ; en France, l’automobile, les transports ferroviaires (ALSTOM, Siemens Transportation Systems, ANSALDO STS) (TGV, Corail, RER, METEOR), les technologies aéronautiques (Thales Air Systems, Thales Avionics, Airbus, EADS Défense et sécurité) et les technologies spatiales (Thales Alenia Space, EADS Astrium, CNES, Arianespace).
En (2008), il est possible de trouver des compilateurs Ada pour certains systèmes d’exploitation (Windows, Linux, VxWorks) et d’architectures matérielles, y compris un compilateur libre (GNAT, inclus dans GNU Compiler Collection) compilant de l’Ada 83/95/2005.
Ada est souvent utilisé en introduction aux cours de programmation informatique avancée, et parce qu'il partage les mêmes qualités pédagogiques que le Pascal dont il a hérité, Ada est même maintenant utilisé pour les cours d'introduction à la programmation.
Autres langages dans la mouvance Ada [modifier]
Ada est inspiré du Pascal dont il a repris tant l'esprit de la syntaxe que de l'architecture (surtout si on inclut Turbo Pascal). Le langage Ada a inspiré Bertrand Meyer pour la conception du langage Eiffel, qui y ajoute des notions de programmation par contrats (mais se montre moins adapté à l'industrie sous certains aspects). La notion de programmation par contrat formalisée par Bertrand Meyer avec Eiffel, a amené la création d'un projet d'extension d'Ada, pour lui faire supporter des notations permettant d'exprimer des assertions contractuelles dans les spécifications de package (ces extensions fonctionnent comme une surcouche, et sont traitées par un préprocesseur).
Dans le domaine des bases de données, Ada a inspiré le langage PL/SQL.