Terms in this set (129)
Finitude of data In mathematics, integer set is infinite. In hardware, there is always a largest and
smallest integer
Execution efficiency allows compilers to allocate memory efficiently.
Translation efficiency static types allow the compiler to reduce the amount of code to be compiled
Writability allows many common programming errors to be caught early.
Readability explicit types help to document data design.
Remove ambiguities explicit types can be used to resolve overloading.
Design tool explicit types highlight design errors and show up as translation-time errors.
Interface consistency and correctness explicit data types help in verification of large programs
Data type the basic abstraction mechanism
Data type (definition 1) a set of values
Data type (definition 2) a set of values, together with a set of operations on that values having certain
properties
Type checking (ch 8) the process a translator goes through to determine whether type information in
a program is consistent
Type inference (ch 8) the process of attaching types to expressions
Type constructors mechanisms used with a group of basic types to construct more complex
types. Example = Array takes a base type and a size or range indication and
constructs a new data type
, CSE 3302 Final Exam (CH 8-10)
User-defined types types created using type constructors
Type declaration (or type definition) used to associate a name with a new data type
Anonymous type a type with no name. Can use typedef in C to assign a name
Type equivalence rules for determining if two types are the same
Type system methods for constructing types, the type equivalence algorithm, type inference
rules, and type correctness rules
Strongly typed a language that specifies a statically applied type system that guarantees all
data-corrupting errors will be detected at the earliest possible point. Errors are
detected at translation time, with a few exceptions (such as array subscript
bounds)
Unsafe programs programs with data-corrupting errors
Legal programs proper subset of safe programs; those programs accepted by a translator
Weakly-typed language one that has loopholes that may allow unsafe programs
Untyped (or dynamically typed) languages languages without static type systems. All safety checking is performed at
execution time
Polymorphism allows names to have multiple types while still permitting static type checking
Predefined types those types supplied with a language, from which all other types are
constructed. Generally specified using either keywords or predefined
identifiers. May include some variations on basic types, such as for numeric
types
Simple types have no other structure than their inherent arithmetic or sequential structure.
Usually includes predefined types. Includes enumerated types and subrange
types
Enumerated types sets whose elements are named and listed explicitly. Example in C = enum
color {Red, Green, Blue}
Subrange types contiguous subsets of simple types specified by giving least and greatest
elements. Example = type Digit_type is range 0..9;
Ordinal types types that exhibit a discrete order on the set of values. All numeric integer
types are ___ types. Always have comparison operators. Often have successor
and predecessor operations (Real numbers are not)