OK,
You can simply declare a variable, ostensibly empty, and the engine will watch your back if you try to add something to it. But you cannot both declare and add in the same line of code. So there is another level of declaration, perhaps because it occurs in the very same line as the test arithmetic, that breaks: on mouseUp put b + 3 end mouseUp This is similar to but "below" the extra level of evaluation that we know as a "do" construction. It is deeper, closer to the heart of the engine, perhaps, that was never addressed (or ignored for other reasons)? Because this does not work, though one might think it should: on mouseUp do "put b + 3" end mouseUp Craig -----Original Message----- From: J. Landman Gay <jac...@hyperactivesw.com> To: How to use LiveCode <use-livecode@lists.runrev.com> Sent: Mon, Oct 27, 2014 3:16 pm Subject: Re: Is zero the same as empty? On 10/27/2014, 1:55 PM, dunb...@aol.com wrote: > on mouseUp > local b > answer b + 1 > end mouseUp > > > Also works just fine, thank you, and therefore the engine still knows what to do Right, because even if you put empty into the variable first (as in your second message) the act of doing a math calculation forces the variable to zero. It happens internally, so you don't see it. put empty into b put b = zero -- false put b+1 -- 1, because empty has converted to zero internally put b = zero -- false The point being that until it is used, empty can be either empty or zero. Usage determines the value. However, the last line above will put "false", because the engine restores the original value if it was specified. This throws an error: on mouseUp put b = zero -- false put b = "" -- false put b+1 -- ERROR end mouseUp So we can apparently confuse the engine into not knowing what the value should be. -- Jacqueline Landman Gay | jac...@hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode