Topic: primitive data type as memory

topics > computer science > data > Group: data type

casting a variable to a different type
data types are not needed
primitive data types of a language
ref_any or Object data type
universal data type
variable as reference to storage


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 up

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 up

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 up

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 up

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 up

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 up

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 up

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 up

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 up

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 up

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)

Updated barberCB 7/05
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.