ThesaHelp: references p-r
Group: data type
Topic: data type as a set of variables
Topic: abstraction
Topic: abstract data type
Topic: abstraction in programming language
Topic: object-oriented data types
Topic: weak vs. strong type checking
Topic: dynamic vs. static data type
Topic: localized understanding
Topic: user-defined data type
Topic: reusable programming
Topic: extensible languages
Topic: data types in Thesa
Topic: primitive data types of a language
Topic: units
Topic: referential transparency
Topic: type conversion
Topic: generic operations and polymorphism
Group: program proving
Topic: Thesa data structures
Topic: primitive data type as memory
Topic: ref_any or Object data type
Topic: representation data type
Topic: data type compatibility
Topic: type parameter
Topic: interface type
Topic: restricted and extended types
Topic: object-oriented methods
| |
Reference
Parnas, D.L., Shore, J.E., Weiss, D.M.,
"Abstract data types defined as classes of variables",
Proceedings of the Conference on Data: Abstraction, Definition and Structure,
SIGPLAN, 8, 2, pp. 149-154, March 1976.
Google
Other Reference
p. 217-228 in Hoffman, D.M., Weiss, D.M. (eds.), Software Fundamentals. Collected Papers of David L. Parnas, Boston: Addison-Wesley, 2001
Quotations
149 ;;Quote: data type is poorly defined as syntax (i.e., declaration), value space, value space and its operations, representation, representation and operations
| 149;;Quote: a data type is an equivalence class of variables with the same permitted contexts
| 150;;Quote: an abstraction is a concept with more than one possible realization; solving a problem as an abstraction, solves many problems at once
| 150+;;Quote: user-defined data types are abstractions; e.g., structured programming, stepwise refinement, and information hiding
| 150;;Quote: a data type provides information about the intended use of data, restricting its meaningful operations
| 150+;;Quote: data types increase reliability and reduce development costs; compile-time checking and redundancy
| 150 ;;Quote: with user-defined data types, programs are shorter; easier to write, understand, prove correct, modify
| 150 ;;Quote: data abstraction allows abbreviation, code sharing, and reuse; like subroutines
| 150 ;;Quote: user-defined data types improve data portability between systems; helps reduce the amount of program rewriting
| 150 ;;Quote: self-describing data may be completely determined only at the time of actual processing; needs an extensible language
| 150 ;;Quote: a problem of units is that different properties, e.g., length and height, have the same units
| 150 ;;Quote: data type abstraction allows one variable to be substituted for another without making the program illegal or meaningless
| 150 ;;Quote: variables have the same mode if they have the same data representation and data access; can freely substitute variables or generate code
| 151 ;;Quote: a data type is a class of variables that can be substituted in some restricted context; hence, a class of modes
| 151 ;;Quote: automatic type conversion does not work as intended; i.e., perform intended conversions while refusing to perform other conversions
| 151 ;;Quote: an abstract data type is a class of modes that specifies the permissible operands for its operators; can use any member of the mode class
| 151+;;Quote: a programming language should be able to group modes into abstract types almost arbitrarily
| 151 ;;Quote: spec-types have different representations but the same set of operators; operators are generic
| 151+;;Quote: if can prove a program correct according to its specifications, can then replace spec-types with other variables of the same type, but different modes
| 151 ;;Quote: a rep-type is the set of modes with the same representation; explicitly declared, includes operations
| 152 ;;Quote: a param-type is a set of possible assignments to parameterized modes; e.g., all arrays of varying element types and bounds
| 152 ;;Quote: variant-type -- a type could be all data structures that contain name and birth-date fields
| 152 ;;Quote: a variable could belong to many types; may be difficult to understand
| 152+;;Quote: should control any dependencies on representation and machine details; better than dirty tricks
| 153 ;;Quote: a spec-type either branches on the actual mode or its variables carry its procedures
|
Related Topics
ThesaHelp: references p-r (245 items)
Group: data type (34 topics, 730 quotes)
Topic: data type as a set of variables (11 items)
Topic: abstraction (62 items)
Topic: abstract data type (64 items)
Topic: abstraction in programming language (47 items)
Topic: object-oriented data types (29 items)
Topic: weak vs. strong type checking (42 items)
Topic: dynamic vs. static data type (24 items)
Topic: localized understanding (43 items)
Topic: user-defined data type (13 items)
Topic: reusable programming (77 items)
Topic: extensible languages (71 items)
Topic: data types in Thesa (92 items)
Topic: primitive data types of a language (31 items)
Topic: units (23 items)
Topic: referential transparency (26 items)
Topic: type conversion (33 items)
Topic: generic operations and polymorphism (67 items)
Group: program proving (10 topics, 311 quotes)
Topic: Thesa data structures (59 items)
Topic: primitive data type as memory (29 items)
Topic: ref_any or Object data type (9 items)
Topic: representation data type (21 items)
Topic: data type compatibility (5 items)
Topic: type parameter (34 items)
Topic: interface type (50 items)
Topic: restricted and extended types (35 items)
Topic: object-oriented methods (42 items)
|