Comme avec n'importe quel langage de programmation, vous devez éviter les conflits de noms. Dans la plupart des langages, les problèmes surgissent à la compilation et non à l'exécution. Dans Smile et avec AppleScript, vous avez la possibilité d'augmenter le contexte à tout moment avec de nouvelles variables ou de nouvelles fonctions. Cela apporte de nombreux avantages, mais peut provoquer des conflits de noms.
Pour voir la liste des variables actuellement définies dans le contexte de Smile, exécutez la ligne suivante dans un terminal AppleScript :
name of every variable of context
Les premières variables de la liste sont celles définies au lancement de Smile, les autres étant celles que vous avez définies depuis en utilisant l'interpréteur AppleScript.
De même :
name of every handler of context
renvoie une liste de noms de fonctions. Au début de la liste, vous trouverez deux fonctions ayant des noms courts : dd et msg. dd est un raccourci pour un réglage standard de display dialog [...]. msg permet d'afficher un paramètre dans la Console. Si vous définissez une variable ou une fonction avec ces noms-là (en particulier pour msg), ces fonctions ne seront plus disponibles.
set dd to 1 -- :-(
set msg to "hello world" -- :-(
A l'intérieur d'une fonction, dd et msg ne seront surdéfinis que localement. Dans un terminal AppleScript, ils le seront de manière globale et jusqu'à ce que vous quittiez l'application.
|