LSL Variables

From Second Life Wiki
Revision as of 16:14, 4 September 2007 by Ppaatt Lynagh (talk | contribs) (However, a list variable may hold zero or more values of any type)
Jump to navigation Jump to search

A variable is a place to store information, like a number or a string.

A variable has a name, a type, and a value. The name starts with a letter, and the name convention is similar to C or Java. Case matters. X is not the same as x.

LSL is a strongly and statically typed language. This means that variables must be declared by type and that variables may only hold values of a corresponding type. However, a list variable may hold zero or more values of any other type.

Some examples:

integer l = 2;
float   x = 1.2;
string  n = "Lee";
list    l = ["This", "Is", "A", "List"];
list    l = ["A list may contain many types of values such as", 2, 1.2, <0.4, 0.8, 1.6>];
vector  v = <1,6,2>;

Scope of variables

The variable name is in scope from the point it first appears to the end of the scope it is in, or the end of the script for global variables. A name may not be defined twice in the same scope, but a name may be redefined in an inner scope, and it hides the same name at outer scope. Again, the semantics are very similar to C and Java.

See Also