giovedì 2 dicembre 2010

ADA

Fin dalla prima stesura, Ada fu sottoposto a un processo continuo di revisione che ne ha migliorato ed estese le caratteristiche di linguaggio estremamente efficiente e sicuro. Nel 1995 la prima versione fu aggiornata e notevolmente modificata con la ratifica di secondo standard (ISO/IEC 8652:1995(E)). Un'ulteriore nuova versione dello standard internazionale è attesa a breve, anche se le novità, principalmente costituite da una libreria di "Containers" come le "Linked List" e le "Map" di oggetti, sono da tempo già implementate nei più avanzati compilatori come il GCC-4.x della FSF - Free Software Foundation e lo GNAT di AdaCore.
Come esempio non esaustivo a proposito del fatto che Ada supporta la progettazione di sistemi software "mission and safety critical", basti sapere, caso più unico che raro, che i compilatori per il linguaggio devono seguire un processo di certificazione che è esso stesso uno standard internazionale (ISO/IEC 18009 - Ada: Conformity Assessment of a Language Processor). Il cosiddetto "ACATS - Ada Conformity Assessment Test Suite" è una suite di test costruita secondo il suddetto standard ed è parte integrante del processo di certificazione svolto da laboratori autorizzati sotto l'autorità del Ada Compiler Assessment Authorit (ACAA).
Ada rappresenta lo stato dell'arte dell'ingegneria del software, e unisce in una soluzione unica principi e tecniche provenienti da diversi paradigmi di programmazione, in particolare programmazione modulare, programmazione orientata agli oggetti, programmazione concorrente e programmazione distribuita.
Sebbene l'interesse del DOD vertesse principalmente sullo sviluppo di applicazioni militari, Ada è un linguaggio general-purpose, ovvero utilizzabile in qualsiasi dominio applicativo. L'origine militare del linguaggio si rivela però nella presenza di caratteristiche molto evolute in materia di sicurezza del codice; per questo motivo, il linguaggio viene ancora oggi usato in molti contesti in cui il corretto funzionamento del software è critico (per esempio sistemi di controllo di velivoli - avionica - e del traffico aereo).
Fra le caratteristiche peculiari di Ada si possono citare:
  • programmazione concorrente (task)
  • programmazione real-time
  • gestione delle eccezioni
  • presenza di tipi di dati astratti
  • controlli semantici estesi in fase di compilazione
  • programmazione distribuita
  • possibilità di definire il formato dei dati a livello di bit (utile per il controllo di dispositivi esterni).

Nessun commento:

Posta un commento