Models 707B and 708B Switching Matrix Reference Manual
Section 6: Instrument programming
707B-901-01 Rev. B / January 2015
6-11
What is Lua?
Lua is a programming language that can be used with TSP-enabled instruments. Lua is an efficient
language with simple syntax that is easy to learn.
Lua is also a scripting language, which means that scripts are compiled and run when they are sent
to the instrument. You do not compile them before sending them to the instrument.
Lua basics
This section contains the basics about the Lua programming language to allow you to start adding
Lua programming commands to your scripts quickly.
For more information about Lua, see the
http://www.lua.org
). Another source of useful
information is the
http://lua-users.org
), created for and by users of Lua programming
language.
Comments
Comments start anywhere outside a string with a double hyphen (
--
). If the text immediately after a
double hyphen (
--
) is anything other than double left brackets (
[[
), the comment is a short comment,
which continues only until the end of the line. If double left brackets follow the double hyphen (
--[[
),
it is a long comment, which continues until the corresponding double right brackets (
]]
) close the
comment. Long comments may continue for several lines and may contain nested
[[
. . .
]]
pairs.
The table below shows how to use code comments.
Using code comments
Type of
comment
Comment
delimiters
Usage
Example
Short
comment
--
Use when the
comment text fits
on a single line.
--Turn off the front-panel display.
Long
comment
--[[ ]]
Use when the
comment text is
longer than one
line.
--[[Display a menu with three menu items.
If the second menu item is selected,
the selection will be given the value
Test2.]]
Function and variable name restrictions
You cannot use Lua reserved words and top level command names for function or variable names.
You cannot use the following Lua reserved words for function or variable names.
Lua reserved words
and
for
or
break
function
repeat
do
if
return
else
in
then
elseif
local
true
end
nil
until
false
not
while