Come dichiarare variabili, gestire tipi di dato e usare STAY e IF.
Una variabile ha questa forma:
TIPO_VARIABILE nome_variabile = dati
_.Per riferirsi al valore di una variabile da un altro punto del codice si usa @ davanti al nome:
nome = Mario
TALK Ciao, @nome!
<* Output: Ciao, Mario! *>
Il "potere" di @ si interrompe al primo carattere non ammesso nel nome (spazio, !, ,, ecc.).
Esistono tre tipi di dato. Il prefisso # davanti al nome dichiara che la variabile contiene un numerale o un booleano.
| Tipo | Prefisso | Descrizione |
|---|---|---|
| Stringa | (nessuno) | Immagazzina il dato come testo |
| Numerale | # | Immagazzina un valore numerico |
| Booleano | # | Solo due valori: V (vero) o F (falso) |
var = 8 >> stringa: immagazzina il testo "8"
#var = 8 >> numerale: immagazzina il numero 8
var = V >> stringa: immagazzina il testo "V"
#var = V >> booleano: immagazzina il valore vero
| Comando | Effetto |
|---|---|
n:var | Converte in numerale. Se la stringa è un numero usa quel valore, altrimenti vale 1. Stringa vuota → 0. |
b:var | Converte in booleano. Stringa vuota o "F" → F, tutto il resto → V. Da numero: 0 → F, qualsiasi altro → V. |
s:var | Converte in stringa. Il valore diventa testo leggibile. |
var = 8
n:var >> ora var è il numerale 8
#n = 0
b:n >> ora n è il booleano F
#n = 5
s:n >> ora n è la stringa "5"
Per sapere il tipo attuale di una variabile si usa \t seguito dal nome:
#eta = 25
TALK \teta >> Output: number
nome = Mario
TALK \tnome >> Output: string
Esistono tre tipi di variabile.
La più comune. Il valore può essere cambiato con una riassegnazione:
var = Buongiorno >> dichiarazione
var = Arrivederci >> riassegnazione
Si può anche cambiare tipo durante la riassegnazione:
var = Ciao >> stringa
#var = V >> riassegnata come booleano
#a = 5
var = @a >> var vale 5 (copia di a)
#a = 6 >> a cambia, ma var rimane 5
Si antepone STAY alla dichiarazione. Il valore non può essere cambiato in nessun modo.
STAY #pi = 3.14
STAY lingua = italiano
Si antepone IF. Possono contenere solo booleani o operazioni che producono booleani. Il prefisso # non è necessario.
IF vero = V >> corretto
IF errore = 5 >> ERRORE: 5 non è un booleano
La caratteristica speciale: se una variabile IF è posta uguale a un'altra e quella cambia, anche la IF cambia di conseguenza.
#a = V
IF cond = @a
#a = F >> adesso anche cond vale F