[i6] Manipulations de variables en Inform 6

Le rédacteur de l’article Manipulations de variables en Inform 6, sur fiction-interactive.fr, semble avoir une mauvaise compréhension de ce que sont des variables globales et locales.
Une variable dans un objet en I6 est bien une variable globale et non locale :[code]Object obj
with a 1; !ou « private a 1 » pour en restreindre l’accès au seul objet

Global b = 2;

[ rtn;
obj.a = -1;
b = -2;
];

[ main c;
c = 3;
print obj.a, " ", b, " ", c;
new_line;
rtn();
print obj.a, " ", b, " ", c;
new_line;
];[/code]a est une variable globale (appelée propriété dans un objet I6), modifiable, rémanente et accessible de n’importe quelle fonction. Pour en restreindre l’accès au seul objet qui l’a déclaré, il faut la déclarer private.
b est une variable globale modifiable, rémanente et accessible de n’importe quelle fonction.
c est une variable locale modifiable, non rémanente et accessible seulement à l’intérieur de la fonction main.

DM4 :

Du coup, l’article est faux et prête à confusion.