User manual

Series 3700 System Switch/Multimeter Reference Manual Section 2: TSP Programming Fundamentals
3700S-901-01 Rev. C / July 2008 2-43
Base library functions
print(x)
Prints the argument x to the active host interface, using
the tostring() function to convert x to a string.
collectgarbage([limit])
Sets the garbage-collection threshold to the given limit (in
Kbytes) and checks it against the byte counter. If the new
threshold is smaller than the byte counter, then TSL
immediately runs the garbage collector. If the limit
parameter is absent, it defaults to 0 (thus forcing a
garbage-collection cycle). See NOTE below for more
information.
gcinfo()
Returns the number of Kbytes of dynamic memory that
TSP
TM
is using.
tonumber(x [,base])
Returns x converted to a number. If x is already a
number, or a convertible string, then the number is
returned; otherwise, it returns nil.
An optional argument specifies the base to interpret the
numeral. The base may be any integer between 2 and
36, inclusive. In bases above 10, the letter A (in either
upper or lower case) represents 10, B represents 11, and
so forth, with Z representing 35. In base 10, the default,
the number may have a decimal part, as well as an
optional exponent. In other bases, only unsigned integers
are accepted.
tostring(x)
Receives an argument of any type and converts it to a
string in a reasonable format.
type(v)
Returns the type of its only argument, coded as a string.
The possible results of this function are: nil, number,
Boolean, table, or function.
NOTE TSL does automatic memory management, which means you do not have to allocate
memory for new objects and free it when the objects are no longer needed. TSL
manages memory automatically by occasionally running a garbage collector to
collect all "dead" objects (that is, those objects that are no longer accessible from
TSL). All objects in TSL are subject to automatic management: tables, variables,
functions, threads, and strings.
TSL uses two numbers to control its garbage-collection cycles. One number counts
how many bytes of dynamic memory TSL is using; the other is a threshold. When
the number of bytes crosses the threshold, TSL runs the garbage collector, which
reclaims the memory of all "dead" objects. The byte counter is adjusted, and then
the threshold is reset to twice the new value of the byte counter.