There are a number of factors in resolving a named variable reference. Namespace References describes the named variable references that are resolved for specific situations.
If the Names Default To Here mode is on, JMP looks for the variable in these locations:
If the Names Default To Here mode is off, JMP looks for the variable in these locations:
|
|
||||||||||
JMP looks for the variable in the Global namespace.
|
JMP creates the variable in the Global namespace.
|
||||||||||
JMP looks for the variable in the encapsulating New Window window namespace.
|
JMP creates the variable in the encapsulating New Window window namespace.
|
||||||||||
JMP looks for the variable in the encapsulating Context Box namespace contained in a New Window window.
|
JMP creates the variable in the encapsulating Context Box namespace contained in a New Window window.
|
These forms existed in JMP 8. In JMP 9 and later, a, :a, and ::a have the same meaning with the Names Default To Here mode turned off.
Delete Symbols();
Local( {d1l1 = 12}, local:f1f1 = Function( {fa1, fa2}, {fl1 = 99}, local:fa12 = fa1 + fa2; Local( {d2l1 = 56}, local:l2l2 = 78; Show( fa12 ); Show( fl1 ); Try( Show( d1l1 ), Write( "\!n\!n***Error=" || Char( exception_msg ) || "\!n" ) ); Show Symbols(); ); local:fa12; ); f1f1( 2, 3 ); ); |
fa12 = 5;
fl1 = 99;
***Error={"Name Unresolved: d1l1"(1, 2, "d1l1", d1l1 /*###*/)}
// Local
d2l1 = 56;
l2l2 = 78;
// 2 Local
// Local
fa1 = 2;
fa12 = 5;
fa2 = 3;
fl1 = 99;
// 4 Local
// Local
d1l1 = 12;
// 1 Local
// Global
exception_msg = {"Name Unresolved: d1l1"(1, 2, "d1l1", d1l1/*###*/)};
// 1 Global
5
|