# Visual Basic/Glossary

An alphabetical list of definitions crossreferenced to more thorough explanations in the main text or in external documents.

## A
### argument

    In computing jargon an argument is one of the pieces of data passed to a procedure. Another name is parameter.

### assign, assigning, assignment

    Assignment is one of the fundamental operations of computing. All it means is copying a value into the memory location pointed at by a variable. The value can be a literal or the value of some other variable, q.v. Assignment

## B
### ByRef

    Declares an argument to a procedure as a pointer to the argument instead of as a copy of the value of the argument. This allows the procedure to permanently change the variable. If neither ByRef or ByVal is stated, ByRef is assumed by the compiler.

### ByVal

    Declares an argument to a procedure as a copy of the value of the argument. The value of the original variable cannot be changed by the procedure. The value of the newly created variable can be changed within the procedure, but this does not affect the variable it was copied from. Programs are more robust if variables are declared ByVal whenever possible since this means that an argument will not be unexpectedly changed by calling a function. This also results in a faster program (see pg 758 of the Microsoft Visual Basic 6 Programmer's Guide).

## C
### compiler directives

    These are instructions included in the text of the program that affect the way the compiler behaves. For instance it might be directed to include one or another version of a piece of code depending on whether the target operating system is Windows 95 or Windows XP.

## I
### Immediate Windows

    This is the window in the IDE which receives output from Debug.Print. See IDE

## J
### JavaScript

    JavaScript is an interpreted language mostly used to provide scripts inside web pages. It is, however, not confined to such uses. See Jarithmetic, a case study in multilingual programming and Crockford on JavaScript, the world's most misunderstood language.

### JScript

    Microsoft's implementation of JavaScript as provided by the Windows Script Host. See Jarithmetic for an example of its use.

## O
### Operands and Operators

    An operand is operated on by an operator. Expressions are built of operands and operators. For instance in this expression:
there are three operands (a, b, and c) and two operators (= and +).
Operands in Visual Basic Classic are either variables or literals

## P
### procedure

    A subroutine, function, method, or property

## R
### ragged array

    An array having rows of differing lengths. Such arrays are natural in languages such as C and JavaScript but rather unusual in Visual Basic although there is nothing that prevents their creation. In Visual Basic you can create such an array using the Array function:
    Such arrays are inefficient in Visual Basic because they are implemented as Variants but functionally identical arrays can be created as instances of a class and can be made much more efficient both in storage space and execution time, although not quite as efficient as C arrays.

### real number

    A variable that can hold a real number is one that can hold a number that can have any value including fractional value. In computer languages variables only approximate real numbers because the irrational numbers are also real, see Real number. In Visual Basic Classic there are two real number types: Single and Double, see Data Types

### reference

    A variable that holds a pointer to a value rather than holding the value itself. In strict Visual Basic usage only object references work like this.

### reference argument

    A declaration of an argument using the ByRef keyword. Reference arguments allow the subroutine or function to make changes to the variable in the calling routine. See Procedures and Functions.

## S
### subroutine

    A procedure similar to a function but it does not return a value.
| Previous: VB6 Command Reference | Contents | Next: Work in Progress |