# Pascal/Strumenti

Pascal
Copertina Tutti i moduli · Sviluppo
    Copertina
* IntroduzionePascal/Introduzione
* AlgoritmiPascal/Algoritmi
* VariabiliPascal/Variabili
* Input e outputPascal/Input e Output
* Tipi di dati e operatoriPascal/Tipi di dati
* Gestione avanzata dei datiPascal/Gestione avanzata dei dati
* CommentiPascal/Commenti
* Librerie e funzioni predefinitePascal/Librerie e funzioni predefinite
* Istruzioni di controlloPascal/Istruzioni di controllo
* ArrayPascal/Array
* Metodo top-down, procedure e funzioniPascal/Metodo top-down, procedure e funzioni
* Programmazione ad oggettiPascal/Programmazione ad oggetti
** Concetti fondamentaliPascal/Concetti fondamentali
** I modificatori public, private e protectedPascal/I modificatori public, private e protected
** Costruttori e distruttoriPascal/Costruttori e distruttori
** Override, metodi virtuali e classi astrattePascal/Override, metodi virtuali e classi astratte
** Il Turbo VisionPascal/Il Turbo Vision
* StrumentiPascal/Strumenti
* EserciziPascal/Esercizi
Modifica il sommario

## Compilatori

I compilatori eseguono la traduzione del linguaggio Pascal in linguaggio macchina, creando cosi un file eseguibile. A fianco a quelli a pagamento offerti dalla Borland sono sempre più diffusi compilatori gratuiti e open-source, sviluppati inizialmente per ambienti Linux.
* A pagamento
** Borland Pascal
** Borland Delphi
* Open Source
** Free Pascal
** GNU Pascal
** DEV Pascal

### Problemi di compatibilità

L'uso di differenti compilatori può far sorgere alcuni problemi di incompatibilità tra versioni, non tanto comunque per quanto riguarda il linguaggio vero e proprio.
Ad esempio, il compilatore di Delphi (che serve per creare applicazione normalmente basate su un'interfaccia grafica) necessita della direttiva di compilazione
da porre subito dopo l'intestazione del programma, la quale specifica che il programma è da eseguire in un'interfaccia solo testo della console.
Inoltre, sempre per quanto riguarda l'uso di Borland Delphi, non è necessario eseguire alcune operazioni come la cancellazione dello schermo, in quanto ciò viene fatto in automatico all'avvio del programma da esso compilato.
A seconda della versione più o meno recente del compilatore, il tipo di dato integer supporta una gamma di valori più vasta di -32.768...32.767

## IDE

IDE è l'acronimo per Integrated Development Environment, che significa ambiente di sviluppo integrato. L'IDE è un particolare software che facilita il programmatore nella stesura, nella compilazione e nella distribuzione del programma. Un tipico esempio di aiuto offerto da un IDE è l'evidenziazione della sintassi e l'individuazione di semplici errori di sintassi prima della compilazione.
* A pagamento
** Borland Delphi
** Borland Turbo Pascal
* Open Source
** Lazarus
** Dev-Pas
** FreePascal
Da notare che Borland Delphi e Lazarus sono IDE di Delphi, ovvero un'evoluzione del Pascal orientata ad oggetti; riescono tuttavia a compilare senza problemi il Pascal normale.

## Compilare i propri sorgenti

Abbiamo visto in precedenza il concetto di compilatore: la sua funzione è quella di tradurre il linguaggio Pascal in un linguaggio comprensibile al computer (linguaggio macchina). Il processo della compilazione può avere esito positivo come può fallire a causa di errori di compilazione, cioè errori di sintassi o di grammatica nel linguaggio Pascal. Questi errori sono generalmente segnalati dai compilatori con messaggi del tipo:
Questo è un errore che vi potrà capitare molto spesso, e segnala la mancanza di un punto e virgola alla fine di un'istruzione. Il compilatore non conclude la compilazione fino a che il listato non presenterà errori.
Su sistemi operativi Linux una buona soluzione consiste nell'uso di Free Pascal. Per compilare un sorgente sono sufficienti pochi comandi di console; innanzitutto è necessario spostarsi nella directory in cui è presente il sorgente, successivamente basta eseguire le istruzioni:
Potremo eseguire il programma digitando:
Su Windows l'uso di Free Pascal da riga di comando risulta identico dal prompt dei comandi tranne per l'esecuzione del file, che viene fatta nella forma
L'uso degli IDE semplifica molto questi processi. Generalmente è possibile individuare nella barra dei menu di questi programmi voci come Compile -> Compile oppure Run -> Run (esegue il programma) oppure Compile -> Run.

## Alcuni esempi commentati

Questo è un programma che, dato un numero, ne calcola la radice quadrata (senza l'uso della funzione sqrt, ovviamente) usando una regola spiegata durante l'esecuzione del programma. Il cuore dell'algoritmo è un ciclo ripeti... sino a quando che, oltre a calcolare le approssimanzioni, stampa anche una tabella passo per passo dei calcoli effettuati
Il seguente esempio è un programma che permette invece di simulare il lancio di un oggetto con velocità e posizione iniziale scelte dall'utente; per fare ciò si ricorre all'uso della libreria graph, a cui è stata dedicata una sezione nel corso del libro. Come per il programma precedente, bisognerà adattare alcune opzioni in base al compilatore in uso. Il cuore del programma è qui la procedura lancio, che calcola man mano le posizioni dell'oggetto lanciato e le disegna sullo schermo grafico.