Formals are bound to an access method at the time of the call, but actual binding to a value or address takes place at the time of a reference or assignment
Purpose: flexibility of late binding
Resulting semantics:
If actual is a scalar variable, it is pass-by-reference
If actual is a constant expression, it is pass-by-value
If actual is an array element, it is like nothing else
If actual is an expression with a reference to a variable that is also accessible in the program, it is also like nothing else