Don't understand the meaning of "local"

Jim Ault JimAultWins at yahoo.com
Fri Dec 23 12:24:41 EST 2005


> "Local" is a deceptive descriptor. It is used (as a script local) to
> control not only locality, but also persistence--it has both spacial
> and temporal implications.
> 

Perhaps it is the terminology used in the docs.  More precisely, I think of
it as  *handler local, *script local, and *global to Rev variables.  The
handler local is the one that dies when exiting that handler.  This allows
the same variable name (eg. tempVar) to be used without carry-over.

Also, 'set the itemDel to space' only applies to that running handler.
Entering another starts with the default itemDel, so this is a 'handler
local' setting.  Important concept for front/back scripts and stacks in use

Globals are held by Rev and only die when either
delete variable gGlobalVar --is done
the user quits Revolution app.
This means that you could build a stack that is opened, sets some globals,
close with the 'destroyStack' as true, leaving the globals in RAM and
available to all stacks and sub stacks.

Obviously, the kinder, gentler stack design is to delete these variables on
closeStack.

Good questions.

Jim Ault
Las Vegas


On 12/23/05 8:21 AM, "Jim Hurley" <jhurley at infostations.com> wrote:

>> Type: text/plain; charset=ISO-8859-1; format=flowed
>> 
>> Jim,
>> 
>> If you declare your local outside the object handlers, then it stays
>> persistent to that object *until* you edit the script. Editing scripts
>> resets all it's locals.
>> 
>> best,
>> 
>> Chipp
>> 
> 
> Chipp,
> 
> Thanks. That is what I was missing. I was also finding that when I
> returned to the script the old local variable retained its value from
> the previous run--until, as you  say, the script is recompiled.
> 
> "Local" is a deceptive descriptor. It is used (as a script local) to
> control not only locality, but also persistence--it has both spacial
> and temporal implications.
> 
> I'm not faulting the docs. It's all there.
> 
> Jim
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution





More information about the use-livecode mailing list