Ada/Basi: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
cambio avanzamento a 75% |
||
Riga 5:
==="Hello, World!"===
Per dare un' idea generale della sintassi di un linguaggio è tradizione illustrare un programma che stampa la frase "Hello, World!". In Ada si presenta così:
<source lang=ada>
with Ada.Text_IO;
use Ada.Text_IO;▼
▲procedure Hello is
begin
end hello;
L'istruzione '''with''' aggiunge il package '''Ada.Text_IO''' al programma. Questo package è presente in ogni compilatore Ada e contiene tutte le funzionalità necessarie all'I/O testuale.
l'istruzione '''with''' rende disponibili le dichiarazioni di '''Ada.Text_IO''' alla procedura '''Hello''', includendo quindi i tipi, i sottoprogrammi, e tutto ciò che è stato dichiarato per uso pubblico in '''Ada.Text_IO'''. In Ada possiamo paragonare i package a delle cassette per attrezzi: '''Text_IO''', ad esempio, fornisce una raccolta di utilissimi strumenti per l'I/O testuale, racchiusi in un modulo di facile accesso.
▲ Ada.Text_IO.Put_Line("Hello, World!");
Esaminiamo il resto del programma.
▲end Hello;</source>
Analizziamo la procedura main: come possiamo notare, in Ada non ha bisogno di essere chiamata "main", qualsiasi nome va bene (in questo caso, ad esempio si chiama '''Hello'''). In seguito troviamo la chiamata a funzione '''Ada.Text_IO.Put_Line''' che scrive il testo fornitogli in input sul file di output.
Purtroppo, ci si accorge facilmente che l'istruzione '''with''' rende il contenuto del package visibile atraverso selezione, ovvero abbiamo bisogno di specificare ogni volta la provenienza della procedura indicando il nome del package. In programmi molto semplici come questo, possiamo accettarlo, ma in programmi più complessi, come possiamo fare? è necessaria una scorciatoia.
A questo punto abbiamo due opzioni:
*rinominare il package.
*l'istruzione '''use'''.
vediamoli più nel dettaglio:
I commenti iniziano con i due caratteri -- (meno meno) e terminano a fine riga. Tutte queste righe non saranno considerate in fase di compilazione ▼
==="Hello World!" con package rinominato===
Rinominando il package è possibile fornire un nome più corto.
<source lang=ada>
with Ada.Text_IO;
procedure
package IO renames Ada.Text_IO;
begin
IO.Put_Line("Hello, world!");
IO.New_Line;
IO.Put_Line("I am an Ada program with package rename.");
end Hello;
</source>
==="Hello World!" con istruzione '''use'''===
procedure Open▼
L'istruzione '''use''' rende l'accesso al package diretto.
<source lang=ada>
with Ada.Text_IO;
▲ use Ada.Text_IO;
begin
Put_Line("Hello, world!");
New_Line;
Put_Line("I am an Ada program with package use.");
end Hello;
</source>
==Caratteristiche di stile==
Notare che la procedura '''reset''' è dichiarata due volte ma con sintassi diverse: il linguaggio Ada permette questo tipo di costruzioni (overloading) che, come vedremo più avanti, sono uno strumento potente a disposizione del programmatore.▼
▲*I commenti iniziano con i due caratteri -- (meno meno) e terminano a fine riga. Tutte queste righe non saranno considerate in fase di compilazione
▲
*Il compilatore Ada non fa distinzione fra maiuscole e minuscole, quindi Ada, ada, ADA, sono tutte e tre identiche fra loro. Ada si dice, per questo, che non è ''case sensitive'' ma è ''case unsensitive''.
[[Categoria:Ada|Basi]]
Line 68 ⟶ 72:
[[en:Ada Programming/Basic]]
[[es:Programación en Ada / Hola Mundo]]
{{Avanzamento|75%|26 settembre 2008}}
|