Inform e Glulx/Le basi di Inform/Il debugging
Il debugging
modificaIl debugging è quel processo che permette al programmatore di individuare degli eventuali errori (chiamati più comunemente bug durante la fase di esecuzione di un programma. Ecco un tipico esempio che chiarisce meglio quanto appena detto:
! Esempio sull'uso del debugging
Include "Parser"; Include "VerbLib"; Include "Replace";
Constant DEBUG_TEST;
[ Funz_princip x n; ClearScreen(); ! pulisce lo schermo print "^Inserire il numero da elevare al quadrato: "; x = GetNumber(2);
#IfDef DEBUG_TEST; print "***x ora vale ", x, "***^"; KeyCharPrimitive(); #Endif;
n = Quadrato(x); print "Il quadrato di ", x ," @`e ", n ,".^"; print "^Premi un tasto per uscire^"; KeyCharPrimitive(); ! legge un carattere dalla tastiera ];
[ Quadrato number; return number*number; ];
[ Initialise; Funz_princip(); quit; ! fine del programma ];
Include "Io"; Include "ItalianG";
Se la costante DEBUG_TEST
è definita, allora Inform stampa a video il messaggio corrispondente:
Inserire il numero da elevare al quadrato: 6
|
In questo modo, siamo veramente sicuri che l’istruzione GetNumber
abbia effettivamente ritornato alla variabile x
il valore da noi voluto. Dopo la pressione di un tasto qualsiasi da parte dell’utente, il programma continua normalmente:
Il quadrato di 6 è 36.
|
Se il codice compreso fra le istruzioni #IfDef
ed #Endif
viene compilato ed eseguito solo quando è definita la costante DEBUG_TEST
, a questo punto dovrebbe essere ormai facile capire come fare in modo che tutto questo non avvenga. Basta semplicemente commentare con un punto esclamativo la riga nella quale la costante viene definita:
! Constant DEBUG_TEST
ottenendo così il seguente risultato:
Inserire il numero da elevare al quadrato: 6
|
che la dice lunga sulle potenzialità di questo straordinario linguaggio di programmazione[1].
Note
modifica