Rastell Toull

Site web consacrée à la Bretagne,
à l'Afrique du nord
à la chanson française,
à la recherche scientifique,
et à bien d'autres sujets ...

Le langage ADA

par Jacques-Deric Rouault

Article original
Page publique
Page opérationnelle

Version 4.1 du
4 Mai 2012

Table thématique
Table chronologique
Administrateur du site
Comment citer ce document ?
Jacques-Deric Rouault, 2012. Le langage ADA. Rastell Toull page C156.

Présentation

    Le langage ADA est un des principaux langages informatiques des années 1980-2010. Ce langage reprend la syntaxe et l'architecture de Pascal, et plus anciennement de l'Algol. Si la rédaction en ADA pose de nombreuses contraintes - toutes les variables doivent être typées et déclarées : il n'y a aucune place au flou - la contrepartie positive est que les sources sont facilement lisibles et compréhensibles, et que les sources d'erreurs dans les exécutables sont réduites aux erreurs de logique.

    Comme le langage ADA est défini indépendemment du système d'exploitation et du processeur, les annexes liées à l'environnement machine ne sont pas intégrés dans le langage. En particulier, il n'y a pas de bibliothèque graphique. Pour ma part, je réalise tout ce qui est graphique avec Scilab.

Versions

    A la différence de tous les autres langages, il n'y a pas de dialecte. Il y a une norme, et des compilateurs validés car conformes à cette norme.

    Il y a une première norme, ADA83, une seconde norme ADA95 avec des compléments dans le sens programmation orientée objet, et une troisième révision de la norme, ADA2005.


Implémentations

    Il existe un compilateur ADA95 pour les plateformes Windows, Linux et Mac OS X, qui est de plus gratuit : c'est le compilateur GNAT ADA du projet GNU Compiler Collection. Ce compilateur est libre et gratuit.

    Sous Windows XP, j'utilise la version gnat-3.15p-nt avec l'environnement adagide-6.26. (télécharger les deux programmes, installer le compilateur puis l'environnement).

    Dans le projet CNU Compiler Collection, le compilateur GNAT est intégré dans la collection GCC (dernière version 4.6.2 du 1er Mars 2012).

Contraintes

    Les fichiers sources doivent avoir les extensions ADB (Body) ou ADS (Specifications).

    Avec le compilateur GNAT, les différentes bibliothèques externes appelées (WITH, USE) doivent se trouver dans le même répertoire que le programme compilé.

    Sous Windows, le compilateur produit des fichiers avec des extensions .ali et .o, puis l'exécutable .exe.

    Sous Linux, la commande gnatmake réalise la compilation et l'édition des liens et produit un exécutable (sans extension). L'exécution est lancée par la commande ./ suivie du nom de fichier.

Compatibilité Windows Linux

    Entre Windows et Linux, je n'ai trouvé qu'une seule différence de comportement entre les compilateurs GNAT. Dans la lecture d'un fichier texte, les chaines de caractères ne sont pas lues de la même façon, la version Linux ajoute un caractère supplémentaire avec le code ASCII 13 (retour à la ligne) à la fin.

    Pour avoir des programmes qui fonctionnent de façon identique sous Windows et Linux, je remplace systématiquement la procédure Get_line de Text_io par la procédure lecture_ligne. Voir par exemple la page C127 consacrée aux formats Rastell Toull.

    On sait que Linux fait la distinction entre majuscules et minuscules, à la différence de Windows. Dans tous les environnements, le compilateur construit un exécutable dont le nom est en minuscules. Pour avoir des programmes parfaitement compatibles, les noms des fichiers sources doivent alors être écrits avec des minuscules. On fera de même avec les noms des procédures du programme. Par souci d'homogénéité, tous les noms de fichiers informatiques seront également écrits en minuscules.

Usage

    Personnellement, j'utilise la langage ADA de la façon suivante :

       Je développe et je mets au point les programmes sous Windows avec l'environnement Adagide.
   
       Pour les grosses applications, je dispose actuellement de 2 lames sous Linux. Il s'agit d'ordinateurs sans claviers ni écrans uniquement accessible via le réseau interne. Chaque lame possède 2 processeurs double coeur, ce qui représente au total 8 unités de calcul. Depuis mon ordinateur sour Windows, j'accède à ces processeurs via les applications WinSCP et Putty. Je transfère les sources, je les recompile sous Linux, et il n'y a plus qu'à lancer l'exécution.


Sources

Le langage
http://fr.wikipedia.org/wiki/Ada_%28langage%29
http://en.wikipedia.org/wiki/Ada_%28programming_language%29

Compilateur
http://www.gnu.org/software/gnat/

Liens internes

Autolien
Numéro
Article
Auteur
RubriqueSous-rubrique Nature
C156
Le langage ADA
Jacques-Deric Rouault
B42 Informatique Langages
Article original

Cette page utilise les articles
Numéro
Article
Auteur
RubriqueSous-rubrique Nature
C127
Les formats Rastell Toull
Jacques-Deric RouaultB42 Informatique
Article original

Articles utilisant cette page
Numéro
Article
Auteur
RubriqueSous-rubrique Nature
C127
Les formats Rastell Toull
Jacques-Deric RouaultB42 Informatique
Article original

Articles connexes
Scilab

Page d'accueil
Table thématique
Table chronologique
Administrateur du site / Contact