Existing type systems for object calculi [2] are based on invariant subtyping. Subtyping invariance is required for soundness of static typing in the presence of method overrides, but it is often in the way of the expressive power of the type system. Flexibility of static typing can be recovered in different ways: in first-order systems, by the adoption of object types with variance annotations, in second-order systems by resorting to Self types. Type inference is known to be p-complete for firstorder systems of finite and recursive object types, and np-complete for a restricted version of Self types. The complexity of type inference for systems with variance annotations is yet unknown. This paper presents a new object type system based on ...
We develop the mechanism of variant parametric types as a means to enhance synergy between parametri...
Subtyping appears in a variety of programming languages, in the form of the "automatic coercion...
So far type information for programs written in untyped object-oriented languages equipped with inhe...
AbstractExisting type systems for object calculi are based on invariant subtyping. Subtyping invaria...
Existing type systems for object calculi are based on invariant subtyping. Subtyping invariance is r...
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...
We present a type inference system for a language with object-oriented features such as polymorphic ...
In this paper we present a type system with strong typing and static type checking that is not yet w...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
. Since record polymorphism is one of essential factors for object-oriented languages, various appro...
Type inference is a key component of modern statically typed programming languages. It allows progra...
Abadi and Cardelli [AC96] have presented and investigated object calculi that model most object-orie...
AbstractWe define a powerful type inference mechanism with application to object-oriented programmin...
Type-checked object-oriented languages have typically been designed with extremely simple type syste...
We develop the mechanism of variant parametric types as a means to enhance synergy between parametri...
Subtyping appears in a variety of programming languages, in the form of the "automatic coercion...
So far type information for programs written in untyped object-oriented languages equipped with inhe...
AbstractExisting type systems for object calculi are based on invariant subtyping. Subtyping invaria...
Existing type systems for object calculi are based on invariant subtyping. Subtyping invariance is r...
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...
We present a type inference system for a language with object-oriented features such as polymorphic ...
In this paper we present a type system with strong typing and static type checking that is not yet w...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
. Since record polymorphism is one of essential factors for object-oriented languages, various appro...
Type inference is a key component of modern statically typed programming languages. It allows progra...
Abadi and Cardelli [AC96] have presented and investigated object calculi that model most object-orie...
AbstractWe define a powerful type inference mechanism with application to object-oriented programmin...
Type-checked object-oriented languages have typically been designed with extremely simple type syste...
We develop the mechanism of variant parametric types as a means to enhance synergy between parametri...
Subtyping appears in a variety of programming languages, in the form of the "automatic coercion...
So far type information for programs written in untyped object-oriented languages equipped with inhe...