Intersection types and bounded quantification are complementary extensions of a first-order programming language with subtyping. We define a typed-calculus combining these extensions, illustrate its unusual properties, and develop basic proof-theoretic and semantic results leading to algorithms for subtyping and typechecking. 1.
|
635
|
A formulation of the simple theory of types
– Church
- 1940
|
|
253
|
Semantics of Programming Languages: Structures and Techniques
– Gunter
- 1992
|
|
251
|
Inheritance is not subtyping
– Cook, Hill, et al.
- 1990
|
|
243
|
Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser Theorem
– Bruijn
- 1972
|
|
238
|
Interpr'etation fonctionelle et 'elimination des coupures de l'arithm'etique d'ordre sup'erieur
– Girard
- 1972
|
|
197
|
A filter lambda model and the completeness of type assignment
– Barendregt, Coppo, et al.
- 1983
|
|
193
|
Introduction to Combinators and -Calculus
– Hindley, Seldin
- 1986
|
|
186
|
Simple type-theoretic foundations for object-oriented programming
– Pierce, Turner
- 1994
|
|
184
|
On Understanding Types
– Cardelli, Wegner
- 1985
|
|
170
|
Data types as lattices
– Scott
- 1976
|
|
166
|
Typeful programming
– Cardelli
- 1989
|
|
155
|
Operations on records
– Cardelli, Mitchell
- 1991
|
|
149
|
PolyTOIL: A type-safe polymorphic object-oriented language
– Bruce, Schuett, et al.
- 1995
|
|
138
|
A paradigmatic object-oriented programming language: Design, static typing and semantics
– Bruce
- 1994
|
|
133
|
Refinement types for ML
– Freeman, Pfenning
- 1991
|
|
118
|
An extension of system F with subtyping
– Cardelli, Martini, et al.
- 1994
|
|
110
|
Preliminary design of the programming language Forsythe
– Reynolds
- 1988
|
|
108
|
Inheritance as implicit coercion
– Breazu-Tannen, Coquand, et al.
- 1991
|
|
107
|
A modest model of records, inheritance and bounded quantification
– Bruce, Longo
- 1990
|
|
94
|
Complete restrictions of the intersection type discipline
– Bakel
- 1992
|
|
78
|
A semantic basis for Quest
– Cardelli, Longo
- 1991
|
|
72
|
F-bounded Quantification for Object-Oriented Programming
– Canning, Cook, et al.
- 1989
|
|
72
|
Programming with Intersection Types and Bounded Polymorphism
– Pierce
- 1991
|
|
71
|
Coherence of subsumption, minimum typing and the type checking
– Curien, Ghelli
- 1992
|
|
68
|
PER models of subtyping, recursive types and higher-order polymorphism
– Bruce, Mitchell
- 1992
|
|
64
|
Principal type schemes for an extended type theory
– Rocca, Venneri
- 1984
|
|
60
|
An extension of standard ML modules with subtyping and inheritance
– Mitchell, Meldal, et al.
- 1991
|
|
51
|
Higher-Order Subtyping with Intersection Types
– Compagnoni
- 1995
|
|
51
|
A Unifying Type-Theoretic Framework for Objects
– Hofmann, Pierce
- 1995
|
|
51
|
Programming with intersection types, union types, and polymorphism
– Pierce
- 1991
|
|
49
|
Intersection and union types: syntax and semantics
– Barbanera, Dezani-Ciancaglini, et al.
- 1995
|
|
49
|
Proof Theoretic Studies about a Minimal Type System Integrating Inclusion and Parametric Polymorphism
– Ghelli
- 1990
|
|
48
|
A type-inference approach to reduction properties and semantics of polymorphic expressions
– Mitchell
- 1986
|
|
46
|
Extended type structures and filter lambda models
– Coppo, Dezani-Ciancaglini, et al.
- 1984
|
|
45
|
Two Extensions of Curry's Type Inference System
– Cardone, Coppo
- 1990
|
|
45
|
Functional characters of solvable terms. Zeitschrift f. math. Logik und Grundlagen d
– Coppo, Dezani-Ciancaglini, et al.
- 1981
|
|
44
|
An extension of the basic functionality theory for the -calculus
– Coppo, Dezani-Ciancaglini
- 1980
|
|
37
|
A Type Assignment for the Strongly Normalizable -terms
– Pottinger
- 1980
|
|
35
|
Relational semantics for recursive types and bounded quantification
– Cardone
- 1989
|
|
31
|
The semantics of second-order lambda calculus
– Bruce, Meyer, et al.
- 1990
|
|
31
|
Principal type scheme and unification for intersection type discipline
– Rocca
- 1988
|
|
26
|
The equivalence of two semantic definitions for inheritance in object-oriented languages
– Bruce
- 1991
|
|
26
|
Type Theories, Normal Forms and D1-Lambda-Models
– Coppo, Dezani-Ciancaglini, et al.
- 1987
|
|
25
|
The Coherence of Languages with Intersection Types
– Reynolds
- 1991
|
|
24
|
Extensional PERs
– Freyd, Mulry, et al.
- 1990
|
|
20
|
An implementation of F
– Cardelli
- 1993
|
|
19
|
Divergence of F type checking
– Ghelli
- 1995
|
|
18
|
A new type-assignment for -terms
– Coppo, Dezani-Ciancaglini
- 1978
|
|
18
|
Principal type schemes and lambda-calculus semantics
– Coppo, Dezani-Ciancaglini, et al.
- 1980
|
|
17
|
Soft Typing: An Approach to Type Checking for Dynamically Typed Languages
– Fagan
- 1992
|