Topic: casting a variable to a different type
Topic: data types are not needed
Topic: primitive data types of a language
Topic: ref_any or Object data type
Topic: universal data type
Topic: variable as reference to storage
| |
Summary
All implemented programming languages are executed on machines containing memory for data storage. This memory is usually a sequence of bits addressed by groups of 8, 12, 16, 32, or 64 bits. Assembly language, and some high level languages, manipulate this memory directly. They do not impose any 'artificial' type structure. In all languages, knowledge of the underlying data representation, such as word size, is important for efficient, accurate programming. This is because an abstract language does not fully capture the implementing machine. Dana Scott models his universal type domain on memory bit strings. (cbb 5/80)
Subtopic: bytes as primitive
Quote: IBM 360 generalized machine memory as a sequence of bytes with uniform addressing independent of type [»dehnJC4_1998]
| Quote: a fundamental property of successful computers is that memory is a sequence of words or bytes, addressed by integers [»koenA12_1995]
| Quote: the size of a C++ object is some multiple of the size of a 'char' [»stroB_1991]
| Subtopic: bits as primitive
QuoteRef: bellCG_1971 ;;616 takes basic logic computer units as i-unit (information is some form)
| QuoteRef: baueFL7_1972 ;;679 data type bit (O) so 2 dim array is m x n x sO
| QuoteRef: baueFL7_1972 ;;679 bit sequences limit range eg s1.4 is 4 x sO limited to 0-9
| QuoteRef: wulfWA12_1971 ;;782 all operations are not effected by type of operands is just as bits
| Subtopic: universal domain
Quote: Scott's universal domain is the set of all subsets of non-negative integers [»scotD9_1976]
| Quote: Scott's universal domain reflects the typelessness of computer memory [»demeA_1978]
| Subtopic: memory as kind, size, alignment, and location
Quote: staged allocation maps high-level types to a width, kind, and alignment, e.g., float [»olinR1_2006]
| Quote: staged allocation assigns locations to a combination of registers and memory
| Subtopic: memory as location and size
Quote: within computer memory, only reference and contiguity can express direct relationships [»taivA9_1996]
| Note: the field concept is fundamental; name (the field), memory (its memory base), definition (the offset), and type (size of field); so long at an offset [»cbb_1990, OK]
| Note: type is either primitive, without substructure, or a memory pointer, size, offset; memory is any resource [»cbb_1990, OK]
| Note: the key to memory is that it has a unique address [»cbb_1990, OK]
| Note: a number is a bit string while memory is at a location and has a size [»cbb_1990, OK]
| Subtopic: representation type as storage mapping
Quote: implementers see types as a specification of storage mapping for values [»wegnP10_1986]
| Quote: a rep-type is the set of modes with the same representation; explicitly declared, includes operations [»parnDL3_1976]
| QuoteRef: memorex ;;2-22 can get length of a symbol's value in storage words
| QuoteRef: seedH_1971 ;;72 fields are the memory locations [i.e. treats input fields as memory
| Subtopic: storage semantics
Quote: storage semantics is more common than value or reference semantics; represent objects by containment or by references, whichever works better [»taivA4_1993]
| Subtopic: memory as untyped block of data
Quote: a Clearinghouse item is an uninterpreted block of data (a property type) [»oppeDC7_1983]
| Quote: computer memory is typeless; the same sequence of bits can be logical values, integers, code, etc. [»demeA_1978]
| Quote: computer memory is fundamentally typeless. Any word can hold any value [»oustJK3_1998]
| Quote: the meaning of a value in computer memory is determined by use; it may have multiple meanings
| Quote: the only primitive form of Alphard corresponds to untyped, computer memory [»wulfWA6_1976]
| Quote: in EMPIRIC a segment is an uninterpreted block of bits; a descriptor gives an interpretation [»wilkMV8_1986]
| Subtopic: data packing
Quote: a formatting operator can pack multiple variables into a storage word [»memorex, OK]
| QuoteRef: sammJE_1969 ;;202 parts of words eg c(15-20) is word c bits 15-20
|
Related Topics
Topic: casting a variable to a different type (7 items)
Topic: data types are not needed (8 items)
Topic: primitive data types of a language (31 items)
Topic: ref_any or Object data type (9 items)
Topic: universal data type (18 items)
Topic: variable as reference to storage (12 items)
|