Binding Flashcards
is an association between an attribute and an entity such as between a variable and its type or value, or between an operation and a symbol
binding
Binding can take place at any of the following:
- Language design time
- Language implementation time
- Compile time
- Load time
- Link time
- Run time
A binding is … if it occurs before run time begins and remains unchanged throughout program execution
static
A binding is … if it occurs during run time or can change in the course of program execution
dynamic
is a statement in a program that lists variable names and specifies that they are a particular type
explicit declaration
is a means of associating variables with types through default conventions, rather than declaration statements
implicit declaration
the variable is bound to the type of the value of the expression on the right side of the statement
dynamic type binding
is the process of taking the memory cell to which a variable is bound from a pool of available memory.
Allocation
is the process of placing a memory cell that has been unbound from a variable back into the pool of available memory
Deallocation
of a variable is the time during the variable is bound to a specific memory location
lifetime
are those bound to memory cells before program execution begins and remain bound to those same memory cells until program execution terminates
Static variables
are those whose storage bindings are created when their declaration statements are elaborated, but whose types are statistically bound
Stack-dynamic variables
of such a declaration refers to the storage allocation and binding process indicated by the declaration, which takes place when execution reaches the code which the declaration is attached.
Elaboration
are nameless (abstract) memory cells that are allocated and deallocated by explicit run time instructions written by the programmer
Explicit heap-dynamic variables
are bound to heap storage only when they are assigned values. All their attributes are bound every time they are assigned
Implicit heap-dynamic variables