User manual

Series 2600B
System SourceMeter® Instrument Reference Manual Section 6:
Instrument programming
2600BS-901-01 Rev. B / May 2013 6-19
Example: Concatenation
print(2 .. 3)
print("Hello " .. "World")
23
Hello World
Operator precedence
Operator precedence in Lua follows the order below (from higher to lower priority):
^ (exponentiation)
not, - (unary)
*, /
+,
.. (concatenation)
<, >, <=, >=, ~=, ==
and
or
You can use parentheses to change the precedences in an expression. The concatenation ("..") and
exponentiation ("^") operators are right associative. All other binary operators are left associative. The
examples below show equivalent expressions.
Equivalent expressions
reading + offset < testValue/2+0.5
=
(reading + offset) <
((testValue/2)+0.5)
3+reading^2*4
=
3+((reading^2)*4)
Rdg < maxRdg and lastRdg <=
expectedRdg
=
(Rdg < maxRdg) and (lastRdg <=
expectedRdg)
-reading^2
=
-(reading^2)
reading^testAdjustment^2
=
reading^(testAdjustment^2)
Conditional branching
Lua uses the if, else, elseif, then, and end keywords to do conditional branching.
Note that in Lua, nil and false are false and everything else is true. Zero (0) is true in Lua.