variable
<programming> (Sometimes "var" /veir/ or /var/) A named memory location
in which a program can store intermediate results and from which it can read it
them. Each programming language has different rules about how variables can be
named, typed, and used. Typically, a value is "assigned" to a variable in an
assignment statement. The value is obtained by evaluating an expression and then
stored in the variable. For example, the assignment
x = y + 1
means "add one to y and store the result in x". This may look like a
mathematical equation but the mathematical equality
is only true in the program until the value of x or
y changes. Furthermore, statements like
x = x + 1
are common. This means "add one to x", which only makes sense as a state
changing operation, not as a mathematical equality.
The simplest form of variable corresponds to a single-word of memory or a CPU
register and an assignment to a load or store machine code operation.
A variable is usually defined to have a type, which never changes, and which
defines the set of values the variable can hold. A type may specify a single
("atomic") value or a collection ("aggregate") of values of the same or
different types. A common aggregate type is the array - a set of values, one of
which can be selected by supplying a numerical index.
Languages may be untyped, weakly typed, strongly typed, or some combination.
Object-oriented programming languages extend this to object types or classes.
A variable's scope is the region of the program source within which it
represents a certain thing. Scoping rules are also highly language dependent but
most serious languages support both local variables and global variables.
Subroutine and function formal arguments are special variables which are set
automatically by the language runtime on entry to the subroutine.
In a functional programming language, a variable's value never changes and
change of state is handled as recursion over lists of values.
(2004-11-16)
Nearby terms:
vapourware « VAR « var « variable »
Variational Graphics eXtended » VAX » VAX DOCUMENT
|