We show that the type inference problem for a lambda calculus with records, including a record concatenation operator, is decidable. We show that this calculus does not have principal types, but does have finite complete sets of types: that is, for any term M in the calculus, there exists an effectively generable finite set of type schemes such that every typing for M is an instance of one the schemes in the set. We show how a simple model of object-oriented programming, including hidden instance variables and multiple inheritance, may be coded in this calculus. We conclude that type inference is decidable for object-oriented programs, even with multiple inheritance and classes as first-class values. 1. Introduction A practical motivation...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
We present a new predicative and decidable type system, called ML , suitable for languages that inte...
This paper presents an untyped lambda calculus, extended with object primitives that reflect the cap...
AbstractRecord concatenation, multiple inheritance, and multiple-object cloning are closely related ...
We show how type inference for object oriented programming languages with state can be performed wit...
Object-oriented languages can be translated into a #lambda#-calculus with records. Therefore, type i...
We present a type inference algoritm and its verification for an object-oriented programming languag...
We present a type inference algoritm and its verification for an object-oriented programming languag...
Type inference for the \lambda-calculus with records was investigated by Remy and also by Wand. ...
Abadi and Cardelli have recently investigated a calculus of objects [2]. The calculus supports a key...
AbstractM. Abadi and L. Cardelli have recently investigated a calculus of objects (1994). The calcul...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
AbstractWe define a powerful type inference mechanism with application to object-oriented programmin...
We present a type inference system for a language with object-oriented features such as polymorphic ...
We describe an extension of ML with records where inheritance is given by ML generic poly-morphism. ...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
We present a new predicative and decidable type system, called ML , suitable for languages that inte...
This paper presents an untyped lambda calculus, extended with object primitives that reflect the cap...
AbstractRecord concatenation, multiple inheritance, and multiple-object cloning are closely related ...
We show how type inference for object oriented programming languages with state can be performed wit...
Object-oriented languages can be translated into a #lambda#-calculus with records. Therefore, type i...
We present a type inference algoritm and its verification for an object-oriented programming languag...
We present a type inference algoritm and its verification for an object-oriented programming languag...
Type inference for the \lambda-calculus with records was investigated by Remy and also by Wand. ...
Abadi and Cardelli have recently investigated a calculus of objects [2]. The calculus supports a key...
AbstractM. Abadi and L. Cardelli have recently investigated a calculus of objects (1994). The calcul...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
AbstractWe define a powerful type inference mechanism with application to object-oriented programmin...
We present a type inference system for a language with object-oriented features such as polymorphic ...
We describe an extension of ML with records where inheritance is given by ML generic poly-morphism. ...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
We present a new predicative and decidable type system, called ML , suitable for languages that inte...
This paper presents an untyped lambda calculus, extended with object primitives that reflect the cap...