This paper proposes an extension of the notion of method as it is currently used in most objectoriented languages. We define polymethods as methods that we can attach directly to types, as opposed to classes and that we can describe with a second-order type. Two benefits result from this extension; first, the expressive power of the language is improved with better modeling abilities. Next, secondorder types yield a more powerful (precise) type inference, which extends the range of static type checking in a truly extensible object-oriented language. We first show that extensible object-oriented languages present many difficulties for static type-checking and that second-order types are necessary to get stronger type-checking. We illustrate ...
We introduce substitution polymorphism as a new basis for typed object-oriented languages. While av...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
Type systems for object-oriented programming languages have been studied a great deal over the past ...
Central features of object-oriented programming are method inheritance and data abstraction attained...
We develop a theory of statically typed object-oriented languages. It represents classes as labeled,...
We present a new predicative and decidable type system, called ML , suitable for languages that inte...
We develop a theory of statically typed object-oriented languages. It represents classes as labeled,...
We present a type inference algoritm and its verification for an object-oriented programming languag...
We show how type inference for object oriented programming languages with state can be performed wit...
We present a type inference algoritm and its verification for an object-oriented programming languag...
AbstractWe extend type constraints with kind constraints to increase the expressiveness of constrain...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
We consider the problem of representing heterogeneous collections of objects in a typed polymorphic ...
We introduce substitution polymorphism as a new basis for typed object-oriented languages. While av...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
Type systems for object-oriented programming languages have been studied a great deal over the past ...
Central features of object-oriented programming are method inheritance and data abstraction attained...
We develop a theory of statically typed object-oriented languages. It represents classes as labeled,...
We present a new predicative and decidable type system, called ML , suitable for languages that inte...
We develop a theory of statically typed object-oriented languages. It represents classes as labeled,...
We present a type inference algoritm and its verification for an object-oriented programming languag...
We show how type inference for object oriented programming languages with state can be performed wit...
We present a type inference algoritm and its verification for an object-oriented programming languag...
AbstractWe extend type constraints with kind constraints to increase the expressiveness of constrain...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper...
We present a new approach to inferring types in untyped object-oriented programs with inheritance, a...
We consider the problem of representing heterogeneous collections of objects in a typed polymorphic ...
We introduce substitution polymorphism as a new basis for typed object-oriented languages. While av...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
Type systems for object-oriented programming languages have been studied a great deal over the past ...