Group: derived data types
Topic: data alignment
Topic: data type as a set of operations
Topic: data type as a set of values
Topic: data type as a set of values and a set of operations
Topic: data type as a set of variables
Topic: data type as constructors, selectors, and predicates
Topic: data type by access rights
Topic: data type by lexical constraints
Topic: data type by name or tags
Topic: data types are not needed
Topic: dynamic vs. static data type
Topic: function signature
Topic: interface type
Topic: lattice theory of types
Topic: non-exclusive data type
Topic: primitive data type as memory
Topic: primitive data types of a language
Topic: ref_any or Object data type
Topic: structural equivalence vs. name equivalence of data types
Topic: type algebras, typed lambda calculus, and type-complete languages
Topic: type conversion
Topic: type retract
Topic: universal data type
Topic: XML data type
Topic: XML schemas
Group: data value
Group: database model
Group: formalism
Group: information
Group: procedure and type-valued variables
Group: program module
Group: type declaration
Group: type checking
Group: type inheritance
Topic: abstract data type
Topic: classification
Topic: constraints
Topic: data as a named set of data objects
Topic: data record
Topic: data type compatibility
Topic: data types in Thesa
Topic: database as a model of reality
Topic: database record
Topic: database schema
Topic: program module as encapsulation
Topic: fundamental concepts such as type, attributes, relationships are all the same
Topic: generic operations and polymorphism
Topic: interface between program modules
Topic: object and value equivalence
Topic: object-oriented data types
Topic: object-oriented prototypes
Topic: persistent data structure
Topic: representing a relationship
Topic: representation data type
Topic: set definition by extension or intension
Topic: taxonomy
Topic: types of hypertext links
Topic: undefined, null, and other signal values
| |
Summary
Data type is a big, diverse concept. In general, it is a classification and abstraction for some purpose. The purposes include storage allocation, available operations and selectors, restricted value set, conversions, print formats, and equivalence. The choice of data type and how it works gives a language its identity and gives its expressions their meanings. See (Group: type declaration) and (Group: type checking) for additional discussion. (cbb 1/90)
Subtopic: type system
Quote: .NET Common Language Runtime (CLR) provides a type system and intermediate language for object-oriented languages; stack-based, single-inheritance, interfaces, native code compilation, runtime services, shared libraries [»kennA6_2001]
| Quote: in Java, array bounds and object types are absolute; you can not lie about the identity of an object [»allmE7_2004]
| Subtopic: many roles of data types
Quote: data types play many roles--classification, software management, data interpretation, operator/operand compatibility, meaningful contexts, invariants, storage mapping [»wegnP8_1990]
| Quote: user-defined data types improve data portability between systems; helps reduce the amount of program rewriting [»parnDL3_1976]
| Quote: data type is poorly defined as syntax (i.e., declaration), value space, value space and its operations, representation, representation and operations [»parnDL3_1976]
| Quote: a variable could belong to many types; may be difficult to understand [»parnDL3_1976]
| Subtopic: type as abstract
Quote: a type separates the incidental details about the implementation of an object from the essential properties for using an object [»stroB_1991]
| Quote: a data type is a class of variables that can be substituted in some restricted context; hence, a class of modes [»parnDL3_1976]
| Note: type represents what doesn't change; e.g., a boolean is 1 bit; allows temporaries of some type [»cbb_1990, OK]
| Subtopic: self-describing data
Quote: self-describing data may be completely determined only at the time of actual processing; needs an extensible language [»parnDL3_1976]
| Subtopic: type as restrictive
Quote: a field's type tells you what data can be in that field, and what data can not be in that field
| Quote: a data type provides information about the intended use of data, restricting its meaningful operations [»parnDL3_1976]
| Quote: data types increase reliability and reduce development costs; compile-time checking and redundancy
| Quote: should control any dependencies on representation and machine details; better than dirty tricks
| Subtopic: type as shape
Quote: an L-value or location has a shape (its type) with links to its R-values; e.g., Cons type with Car and Cdr links [»straC8_1967]
| Quote: an L-value has two functions, one for its R-value (contents) and the other to update its R-value [»straC8_1967]
| Subtopic: external data format
Quote: define symbol table with Abstract Syntax Description Language (ASDL); auto generate code for data structures [»hansDR8_1999]
| Quote: an external data format should be self-describing and preserved under round-tripping; e.g., Lisp S-expressions [»simeJ1_2003]
| Quote: command languages provide high-level data types such as strings, files, directories, and programs [»frasCW6_1983]
| Subtopic: type as concept
Quote: a data type is a concrete representation of an idea or concept; e.g., 'float' [»stroB_1991]
| Quote: use data abstraction to construct modular programs; i.e., define new types that match the application's concepts, e.g., C++ [»stroB_1991]
| Quote: a 'soft' type is a conceptual type attributed by the programmer which distinguishes between objects of the same 'hard' type [»moffDV7_1981]
| Subtopic: type as substitutivity
Note: type lets you substitute like for like [»cbb_1990, OK]
| Subtopic: type vs. module
Quote: a type defines a set of values while a module groups related declarations; a module exists in exactly one instance [»batesR11_2004]
| Quote: Java classes describe a type with its instance variables and a module with its class variables; confuses type with module
| Subtopic: type as interpretation
Quote: data type is an interpretation of bits for modeling, efficient code, interfaces, and error checking [»precL4_1998]
| Quote: a type is the abstract idea of a set (its intension), not its contents [»kentW_1978]
| Quote: the meaning of a value in computer memory is determined by use; it may have multiple meanings
| Quote: datatype has nothing to do with representation; e.g., a complex value is not an ordered pair, and an array is not a contiguous block of values [»meekB9_1994]
| Quote: the data type of an object does not depend on its value, but rather its source and use; type should not be extensional [»morrJH10_1973]
| Note: data type provides parameterization, property sheets, attribute-values that specialize things [»cbb_1990, OK]
| Subtopic: type as consistency
Note: type may be temporarily inconsistent; at 'return', can guarantee anything about a type [»cbb_1990, OK]
| Subtopic: type as fields
Quote: restrict reference variables to a specific type; prevents accessing the incorrect class [»wirtN6_1966]
| Quote: variant-type -- a type could be all data structures that contain name and birth-date fields [»parnDL3_1976]
| Note: with multiple pointers per object, objects may have a type; i.e., bounded local names [»cbb_2000, OK]
| Quote: an anonymous type is defined by new(f=v, ...); equivalent types if same property names and value types [»bierGM10_2007]
| Subtopic: type as bounded state
Quote: in Java, array bounds and object types are absolute; you can not lie about the identity of an object [»allmE7_2004]
| Note: type acts like a limited state of a Turing machine; defines offsets; same type if same label [»cbb_1990, OK]
| Subtopic: type as parameter
Note: parameters are objects with type and nothing else [»cbb_1990, OK]
| Subtopic: type as a set
Quote: traditional set theory defines sets by their contents -- not relevant to types [»kentW_1978]
| Quote: a 'hard' type is defined by the language with a representation, associated operations and values [»moffDV7_1981]
| Quote: in modern type theory, types are values in a suitable semantic domain; type constructors are maps from this domain into itself [»nelsG_1991]
| Quote: a data type may partition a domain (disjoint) or use a predicate (overlapping sets) [»cartR1_1985]
| Subtopic: stratified type
Quote: Russell's theory of types avoids Russell's paradox by stratified formulas; e.g., .in. only occurs in contexts of the form n .in. n+1
| Subtopic: type as syntax
Quote: data type is a syntactic discipline for enforcing abstraction levels [»reynJC9_1983]
| Quote: in Modula-3, every expression has a unique type [»cardL_1991]
| Quote: in Modula-3 every expression has a unique type with a simple subtype relation [»nelsG_1991]
| Quote: data types are primarily for specifying the structure of expressions (type checking) and the behavior of classes (programming) [»wegnP8_1990]
| Quote: to understand an expression must know the data type of each variable in the expression [»browRE7_1976]
| Quote: things are classified into types for naming scope, validity constraints, and relationship domains; groups are mutually exclusive [»kentW_1978]
| Quote: specifying data types makes code more readable [»nielJ5_1989]
| Quote: build complex constraints from simple ones by abstraction: recursive embedding, parameterization, and type declaration [»deutLP1_1981]
| Subtopic: value vs. reference semantics
Quote: a data type is semantically transparent if primitive operations create new values instead of altering existing ones; makes value and pointer semantics the same [»cleaJC_1986]
| Subtopic: type as class, behavior + representation
Quote: a class is a type: it specifies how objects behave and how they are created, used, and destroyed. A class also specifies a representation [»stroB_1991]
| Subtopic: types as objects
Quote: types, operations, and properties are themselves objects defined by a type [»zdonSB10_1986]
| Quote: types, properties, operations, and constraints are objects with the corresponding type [»zdonSB11_1986]
| Quote: values may be members of many types, but Modula-3 objects and traced reference values have an allocated type that is tested by TYPECASE
| Quote: Sketchpad is organized into a Universe of Variables, Holders, Constraints, and Types; the later includes Lines, Circles, and Pictures [»suthIE5_1963]
| Subtopic: type as structure
Quote: XML types are composed of atomic types and element types; sequence, choice, multiple occurrence; optional element name and type name [»simeJ1_2003]
| Subtopic: type vs. token
Quote: type-token--an utterance type is a set of utterance tokens, e.g., two utterances of 'A cow.' and 'A cow.'; ignores differences [»ziffP_1960]
| Quote: type vs. token--can have many tokens of a sentence; each token has the same sentence-type [»martAP_1990]
| Quote: a token node in a semantic net has an associative link to that concept's type node [»quilMR_1967]
| Subtopic: schemas vs. types
Quote: schemas (a structure of frames) more flexible than types for databases [»akscRM5_1984]
| Subtopic: persistence
Quote: a value's persistence should be independent of its type [»atkiMP6_1987]
| Quote: associate persistence with values and separate type from extent; e.g., the integer extent is almost useless; may want multiple extents [»buneP5_1986]
| Subtopic: limitations of types
Quote: allowing exceptional instances can destroy type-safeness; e.g., using Canadian dollars instead of U.S. ones [»borgA10_1986]
| Quote: a variable has more functions than its type indicates, e.g., a counter, input, flag, or communications device [»diseAA_1986a]
|
Group: data type
Group: derived data types (9 topics, 119 quotes)
Topic: data alignment (2 items)
Topic: data type as a set of operations (38 items)
Topic: data type as a set of values (20 items)
Topic: data type as a set of values and a set of operations (16 items)
Topic: data type as a set of variables (11 items)
Topic: data type as constructors, selectors, and predicates (20 items)
Topic: data type by access rights (20 items)
Topic: data type by lexical constraints (15 items)
Topic: data type by name or tags (29 items)
Topic: data types are not needed (8 items)
Topic: dynamic vs. static data type (24 items)
Topic: function signature (21 items)
Topic: interface type (50 items)
Topic: lattice theory of types (15 items)
Topic: non-exclusive data type (16 items)
Topic: primitive data type as memory (29 items)
Topic: primitive data types of a language (31 items)
Topic: ref_any or Object data type (9 items)
Topic: structural equivalence vs. name equivalence of data types (30 items)
Topic: type algebras, typed lambda calculus, and type-complete languages (28 items)
Topic: type conversion (33 items)
Topic: type retract (12 items)
Topic: universal data type (18 items)
Topic: XML data type (22 items)
Topic: XML schemas (16 items)
Related Topics
Group: data value (19 topics, 433 quotes)
Group: database model (15 topics, 316 quotes)
Group: formalism (9 topics, 478 quotes)
Group: information (46 topics, 1160 quotes)
Group: procedure and type-valued variables (4 topics, 95 quotes)
Group: program module (10 topics, 336 quotes)
Group: type declaration (5 topics, 110 quotes)
Group: type checking (12 topics, 392 quotes)
Group: type inheritance (13 topics, 394 quotes)
Topic: abstract data type (64 items)
Topic: classification (65 items)
Topic: constraints (35 items)
Topic: data as a named set of data objects (22 items)
Topic: data record (57 items)
Topic: data type compatibility (5 items)
Topic: data types in Thesa (92 items)
Topic: database as a model of reality (25 items)
Topic: database record (22 items)
Topic: database schema (29 items)
Topic: program module as encapsulation (28 items)
Topic: fundamental concepts such as type, attributes, relationships are all the same (37 items)
Topic: generic operations and polymorphism (67 items)
Topic: interface between program modules (55 items)
Topic: object and value equivalence (60 items)
Topic: object-oriented data types (29 items)
Topic: object-oriented prototypes (39 items)
Topic: persistent data structure (37 items)
Topic: representing a relationship (28 items)
Topic: representation data type (21 items)
Topic: set definition by extension or intension (18 items)
Topic: taxonomy (16 items)
Topic: types of hypertext links (19 items)
Topic: undefined, null, and other signal values (34 items)
|