Results 1 
9 of
9
On understanding types, data abstraction, and polymorphism
 ACM COMPUTING SURVEYS
, 1985
"... Our objective is to understand the notion of type in programming languages, present a model of typed, polymorphic programming languages that reflects recent research in type theory, and examine the relevance of recent research to the design of practical programming languages. Objectoriented languag ..."
Abstract

Cited by 756 (15 self)
 Add to MetaCart
Our objective is to understand the notion of type in programming languages, present a model of typed, polymorphic programming languages that reflects recent research in type theory, and examine the relevance of recent research to the design of practical programming languages. Objectoriented languages provide both a framework and a motivation for exploring the interaction among the concepts of type, data abstraction, and polymorphism, since they extend the notion of type to data abstraction and since type inheritance is an important form of polymorphism. We develop a λcalculusbased model for type systems that allows us to explore these interactions in a simple setting, unencumbered by complexities of production programming languages. The evolution of languages from untyped universes to monomorphic and then polymorphic type systems is reviewed. Mechanisms for polymorphism such as overloading, coercion, subtyping, and parameterization are examined. A unifying framework for polymorphic type systems is developed in terms of the typed λcalculus augmented to include binding of types by quantification as well as binding of values by abstraction. The typed λcalculus is augmented by universal quantification to model generic functions with type parameters, existential quantification and packaging (information hiding) to model abstract data types, and
Nontrivial Power Types can't be Subtypes of Polymorphic Types
 in 4th Annual Symposium on Logic in Computer Science
, 1989
"... This paper establishes a new, limitative relation between the polymorphic lambda calculus and the kind of higherorder type theory which is embodied in the logic of toposes. It is shown that any embedding in a topos of the cartesian closed category of (closed) types of a model of the polymorphic lam ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
This paper establishes a new, limitative relation between the polymorphic lambda calculus and the kind of higherorder type theory which is embodied in the logic of toposes. It is shown that any embedding in a topos of the cartesian closed category of (closed) types of a model of the polymorphic lambda calculus must place the polymorphic types well away from the powertypes oe !\Omega of the topos, in the sense that oe !\Omega is a subtype of a polymorphic type only in the case that oe is empty (and hence oe !\Omega is terminal) . As corollaries, we obtain strengthenings of Reynolds' result on the nonexistence of settheoretic models of polymorphism. Introduction The results reported in this paper have their origin in Reynolds' discovery that the standard settheoretic model of the simply typed lambda calulus cannot be extended to model the polymorphic, or secondorder, typed lambda calculus. In [9] Reynolds speculated that there might be a model of polymorphism in which the typ...
Typed Applicative Structures and Normalization by Evaluation for System F ω
"... Abstract. We present a normalizationbyevaluation (NbE) algorithm for System F ω with βηequality, the simplest impredicative type theory with computation on the type level. Values are kept abstract and requirements on values are kept to a minimum, allowing many different implementations of the alg ..."
Abstract

Cited by 4 (0 self)
 Add to MetaCart
Abstract. We present a normalizationbyevaluation (NbE) algorithm for System F ω with βηequality, the simplest impredicative type theory with computation on the type level. Values are kept abstract and requirements on values are kept to a minimum, allowing many different implementations of the algorithm. The algorithm is verified through a general model construction using typed applicative structures, called type and object structures. Both soundness and completeness of NbE are conceived as an instance of a single fundamental theorem.
A polymorphic λcalculus with Type:Type
 DEC SRC, 130 Lytton Avenue, Palo Alto, CA 94301. May. SRC Research Report
, 1986
"... acknowledgment of the authors and individuals contributors to the work; and all applicable portions of the copyright notice. Copying, reproducing, or republishing for any other purpose shall require a license with payment of fee to the Systems Research Center. All rights reserved. Page 1 ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
acknowledgment of the authors and individuals contributors to the work; and all applicable portions of the copyright notice. Copying, reproducing, or republishing for any other purpose shall require a license with payment of fee to the Systems Research Center. All rights reserved. Page 1
Fundamentals of Object Oriented Database Modelling
, 1996
"... Solid theoretical foundations of object oriented databases (OODBs) are still missing. The work reported in this paper contains results on a formally founded object oriented datamodel (OODM) and is intended to contribute to the development of a uniform mathematical theory of OODBs. A clear distinctio ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
Solid theoretical foundations of object oriented databases (OODBs) are still missing. The work reported in this paper contains results on a formally founded object oriented datamodel (OODM) and is intended to contribute to the development of a uniform mathematical theory of OODBs. A clear distinction between objects and values turns out to be essential in the OODM. Types and classes are used to structure values and objects repectively. This can be founded on top of any underlying type system. We outline different approaches to type systems and their semantics and claim that OODB theory on top of arbitrary type systems leads to type theory with topostheoretically defined semantics. On this basis the known solutions to the problems of unique object identification and genericity can be generalized. It turns out that extents of classes must be completely representable by values. Such classes are called valuerepresentable. As a consequence object identifiers degenerate to a pure...
The Type Concept in OODB Modelling and its Logical Implications
, 2000
"... Conceptual modelling requires a solid mathematical theory of concepts concerning the collection of concepts used in a specific, but broad enough field. The field considered in this paper is database modelling. Here object orientation in the widest sense has been identified as a unifying conceptual u ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
Conceptual modelling requires a solid mathematical theory of concepts concerning the collection of concepts used in a specific, but broad enough field. The field considered in this paper is database modelling. Here object orientation in the widest sense has been identified as a unifying conceptual umbrella that encompasses all relevant datamodels. The theory of object oriented databases has brought to light the fundamental distinction between the concepts of objects and values and correspondingly types and classes. This can be founded on top of any underlying type system. Thus, expressiveness of a datamodel basically depends on the type concept, from which the other concepts can be derived. In order to achieve a uniform mathematical theory we outline different type systems and their semantics and claim that OODB theory on top of arbitrary type systems leads to type theory with topostheoretically defined semantics. On this basis the known solutions to the problems of unique ...
A Generalization of Dijkstra's Calculus to Typed Program Specifications
"... . Dijkstra's predicate transformer calculus in its extended form gives an axiomatic semantics to program specications including partiality and recursion. However, even the classical theory is based on innitary rst order logic which is needed to guarantee the existence of predicate transformers f ..."
Abstract
 Add to MetaCart
. Dijkstra's predicate transformer calculus in its extended form gives an axiomatic semantics to program specications including partiality and recursion. However, even the classical theory is based on innitary rst order logic which is needed to guarantee the existence of predicate transformers for weakest (liberal) preconditions. This theory can be generalized to higherorder intuitionistic logic. Such logics can be interpreted in topoi. Then each topos E canonically corresponds to a denitionally complete theory T such that E is equivalent to the topos IE(T ) of denable types over T . Furthermore, each model of T in an arbitrary topos F canonically corresponds to a logical morphism IE(T ) ! F . This correspondence enables the denition of a type specication discipline with a semantics based on topoi such that the predicate transformers in the associated logic give an axiomatic semantics for typed program specications. 1 Motivation The semantics of programs and pr...