HQ9++
HQ9++ è un linguaggio di programmazione esoterico, creato da David Morgan-Mar con lo scopo di creare un'estensione di HQ9+ che supportasse la programmazione ad oggetti. Il suo nome è una parodia di C++, l'estensione di C che implementa la programmazione ad oggetti.
Istruzioni[modifica | modifica wikitesto]
HQ9++ mantiene le quattro istruzioni dell'HQ9+, aggiungendone una quinta:
- H stampa a video "Hello, World!"
- Q stampa a video l'intero codice sorgente del programma
- 9 stampa a video il testo di "99 bottles of beer"
- + aumenta di 1 il valore contenuto nella variabile puntata dal puntatore alla memoria.
- ++ aumenta di 2 il valore della variabile e crea una nuova variabile, di una generica sottoclasse della classe Object.
Il funzionamento dell'operatore "++" è così definito per mantenere la retrocompatibilità con il codice HQ9+[1].
Utilizzo della memoria[modifica | modifica wikitesto]
I programmi utilizzano un puntatore ad un indirizzo di memoria. La variabile puntata viene aumentata con modulo 256 dalle istruzioni + e ++. Inoltre l'istruzione ++ crea un oggetto di una classe generica, derivata dalla classe primitiva Object. Tuttavia non si può accedere né alla variabile puntata né agli oggetti creati in alcun modo.
Note[modifica | modifica wikitesto]
Voci correlate[modifica | modifica wikitesto]
Collegamenti esterni[modifica | modifica wikitesto]
- (EN) Home page di HQ9++, su dangermouse.net.
- (EN) interprete online di HQ9++, scritto in JavaScript, su safalra.com.
- (EN) altro interprete di HQ9++ Archiviato l'11 gennaio 2015 in Internet Archive. scritto in Liberty BASIC (codice sorgente)