error in test contion
alex at tweedly.net
Fri Oct 25 18:45:14 EDT 2013
(Answering backwards .... :-)
I'd find it to confusing to deal with a statement like that "if ...
then" one you wrote.
(I would be forever asking myself
Is 'not" higher or lower precedence than 'or' ?
Does that 'not' apply to the whole of the res of the expression, or
just the first clause ??
I don't remember - and the dictionary entries don't help - they say
that I can combine 'and', 'or' and 'not - but don't mention which is
So just to save myself mental effort, I'd do something like ....
put not exists(...) into tCond1
put (the prgVrsn of stack "mcp" <> progVersion) into tCond2
if tCond1 OR tCond2 then ....
And that might either resolve, or failing that help with, the question
of what the error message is trying to say.
On 25/10/2013 22:19, Dr. Hawkins wrote:
> I store the program version, calculated from the filename, as a custom
> property of the main stack. So when the filename changes, the following
> code comes into play when opening:
> put exists (the prgVrsn of stack "mcp") , (the prgVrsn of stack "mcp" <>
> if not exists (the prgVrsn of stack "mcp") OR (the prgVrsn of stack "mcp"
> <> progVersion) then
> set the prgVrsn of stack "mcp" to progVersion
> The put executes, with false, false r some such.
> But then the test causes the message,
> Type if-then: error in statement
> Object mcp
> Line if not exists (the prgVrsn of stack "mcp") OR (the prgVrsn of stack
> "mcp" <> progVersion) then
> Hint openMcp
More information about the Use-livecode