Starting with a pragmatical (but formal) definition of type in object-oriented languages, this paper proposes a method to test type safety in this kind of language. We say that a language is (type) safe if it ensures that, during the execution of a correct program, every message sent to an object is matched by an appropriate method. We define a "typical" object oriented programming language, featuring multiple inheritance, recursive types, and separation between specifications and implementations. Then, we give a formal definition for its type system, and a denotational semantics for the execution of the language, based on message passing. Finally, we formally prove that our language is type safe. Along the work, better understand...
In object-oriented programming one distinguishes two kinds of languages. Class-based languages are c...
We investigate semantics-based type assignment for class-based object-oriented programming. Our mo-t...
We show how type inference for object oriented programming languages with state can be performed wit...
This paper formalizes a small object-oriented programming notation. The notation features imperative...
Type systems for object-oriented programming languages have been studied a great deal over the past ...
AbstractIn [12] we defined the λ&-calculus, a simple extension of the typed λ-calculus to model type...
We give a direct type-theoretic characterization of the basic mechanisms of object-oriented programm...
The wide practice of objected oriented programming (OOP) in current software practice is evident. D...
The significance of type theory to the theory of programming languages has long been recognized. Ad...
So far type information for programs written in untyped object-oriented languages equipped with inhe...
This paper is concerned with the relation between subtyping and subclassing and their influence on p...
Statically typed programming languages allow earlier error checking, better enforcement of disciplin...
Being a successful technique in software practice, Object Orientation (OO) is a hot topic in academi...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
() *+Types in programming A type is a collection of computational entities that share some common p...
In object-oriented programming one distinguishes two kinds of languages. Class-based languages are c...
We investigate semantics-based type assignment for class-based object-oriented programming. Our mo-t...
We show how type inference for object oriented programming languages with state can be performed wit...
This paper formalizes a small object-oriented programming notation. The notation features imperative...
Type systems for object-oriented programming languages have been studied a great deal over the past ...
AbstractIn [12] we defined the λ&-calculus, a simple extension of the typed λ-calculus to model type...
We give a direct type-theoretic characterization of the basic mechanisms of object-oriented programm...
The wide practice of objected oriented programming (OOP) in current software practice is evident. D...
The significance of type theory to the theory of programming languages has long been recognized. Ad...
So far type information for programs written in untyped object-oriented languages equipped with inhe...
This paper is concerned with the relation between subtyping and subclassing and their influence on p...
Statically typed programming languages allow earlier error checking, better enforcement of disciplin...
Being a successful technique in software practice, Object Orientation (OO) is a hot topic in academi...
Type systems in object-oriented systems are useful tools to ensure correctness, safety, and integrat...
() *+Types in programming A type is a collection of computational entities that share some common p...
In object-oriented programming one distinguishes two kinds of languages. Class-based languages are c...
We investigate semantics-based type assignment for class-based object-oriented programming. Our mo-t...
We show how type inference for object oriented programming languages with state can be performed wit...