Modula-2

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Modula-2
linguaggio di programmazione
AutoreNiklaus Wirth
Data di origine1978
Paradigmiprogrammazione imperativa, programmazione strutturata, programmazione modulare e programmazione concorrente
Influenzato daMesa, Pascal e Modula
Ha influenzatoModula-3
Implementazione di riferimento
Sistema operativoMultipiattaforma

Modula-2 è un linguaggio di programmazione general-purpose creato da Niklaus Wirth ed è il diretto successore di Pascal.

Modula-2 corregge i problemi e le ambiguità del suo predecessore. Tra le caratteristiche principali vi è il concetto di modulo, ossia di un'unità logica che incapsula al suo interno dati e procedure, limitandone la visibilità all'esterno. Questo permette una migliore organizzazione del programma (cfr. programmazione modulare).

Essendo un linguaggio tipizzato non ammette conversioni implicite fra tipi di dati diversi, come per esempio REAL e INTEGER, e ci vuole una funzione di conversione apposita. I linguaggi fortemente tipizzati producono un codice più corretto e per questo motivo sono i linguaggi più utilizzati nel settore mission-critical come ad esempio l'aerospaziale e il nucleare.

Dato che in tempi passati non vi era un set standard di librerie ogni produttore offriva il proprio, come ad esempio Logitech e TopSpeed, e vi erano grossi problemi nella migrazione del software da un sistema all'altro. Lo standard ISO promise di risolvere questi problemi ma uscì troppo tardi e i produttori di compilatori persero interesse nel linguaggio Modula-2. Molti utenti e società spostarono il loro ambiente di sviluppo in versioni modificate del predecessore come Turbo Pascal o il più nuovo Delphi. Per questo motivo oggi è largamente sconosciuto. Tuttavia, Modula-2 sta riemergendo gradualmente in questi ultimi anni grazie alla nascita del compilatore open source GNU Modula-2.

Hello World![modifica | modifica wikitesto]

 MODULE Hello;
 FROM InOut IMPORT
     WriteString, WriteLn;
 
 BEGIN
 
     WriteString("Hello World!");
     WriteLn;
 
 END Hello.

Bibliografia[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]

Controllo di autoritàLCCN (ENsh85086455 · J9U (ENHE987007541017205171
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica