Chapter 6 Flashcards
Data Types
A ___ ___ defines a collection of data values and a set of predefined operations on those values.
data type
A ___ is the collection of the attributes of a variable.
descriptor
Data types that are not defined in terms of other types are called ___ data types.
primitive
A ___ is a data type that is similar to a record in a structure, except that the elements are not named.
Tuple
A ___ type is one in which the variables have a range of values that consists of memory addresses and a special value, nil.
pointer
___ ___ is the activity of ensuring that the operands of and operator are of compatible types.
Type checking
A ___ type is one that either is legal for the operator or is allowed under language rules to be implicitly converted by compiler-generated code.
compatible
The automatic conversion is called __.
coercion
A ___ ___ is the application of an operator to an operand of an inappropriate type.
type error
___ ___ ___ is type checking at run time.
Dynamic type checking
A programming language is ___ ___ if type errors are always detected.
strongly typed
Two types are ___ if an operand of one type in an expression can be substituted for one of the other type, without coercion.
equivalent
___ ___ ___ means that two variables have equivalent types if they are defined either in the same declaration or in declarations that use the same type name.
Name type equivalence
___ ___ ____ means that two variables have equivalent types if their types have identical structures.
Structure type equivalence
A ___ ___ is a new type that is based on some previously defined type with which it is not equivalent, although it may have identical structure.
derived type