An object encoding translates a language with object primitives to one without. Similarly, a class encoding translates classes into other primitives. Both are important theoretically for comparing the expressive power of languages and for transferring results from traditional languages to those with objects and classes. Both are also important foundations for the implementation of object-oriented languages as compilers typically include a phase that performs these translations. This paper describes a language with a primitive notion of classes and objects and presents an encoding of this language into one with records and functions. The encoding uses two techniques often used in compilers for single-inheritance class-based object-oriented l...
We have previously shown how the discovery of classes from objects can be automated, and how the res...
In this thesis we explore the question of how to represent programming data structures in a constru...
In object-oriented programming one distinguishes two kinds of languages. Class-based languages are c...
Objects have been categorised into classes that declare and implement their behaviour ever since the...
I present a type-theoretic encoding of objects that interprets method dispatch by self-application (...
AbstractWe present an imperative calculus for a class-based language. By introducing classes as the ...
We give a direct type-theoretic characterization of the basic mechanisms of object-oriented programm...
Recently, several descriptions of object oriented programming languages with denotational semantics ...
Object-oriented programming languages all involve the notions of class and object. We extend the n...
We present an interpretation of typed object-oriented concepts in terms of well-understood, purely p...
SelfType is a programming language feature of object systems which allows both methods and instance ...
The cardinal purpose of teaching programming is to demonstrate a method of developing correct progra...
We describe an experimental object-oriented programming language, ASL2, that supports program develo...
Abstract. Much recent work on proof-carrying code aims to build certifying compilers for single-inhe...
Abstract. Class-based objects can be programmed directly and e-ciently in a simple extension to ML. ...
We have previously shown how the discovery of classes from objects can be automated, and how the res...
In this thesis we explore the question of how to represent programming data structures in a constru...
In object-oriented programming one distinguishes two kinds of languages. Class-based languages are c...
Objects have been categorised into classes that declare and implement their behaviour ever since the...
I present a type-theoretic encoding of objects that interprets method dispatch by self-application (...
AbstractWe present an imperative calculus for a class-based language. By introducing classes as the ...
We give a direct type-theoretic characterization of the basic mechanisms of object-oriented programm...
Recently, several descriptions of object oriented programming languages with denotational semantics ...
Object-oriented programming languages all involve the notions of class and object. We extend the n...
We present an interpretation of typed object-oriented concepts in terms of well-understood, purely p...
SelfType is a programming language feature of object systems which allows both methods and instance ...
The cardinal purpose of teaching programming is to demonstrate a method of developing correct progra...
We describe an experimental object-oriented programming language, ASL2, that supports program develo...
Abstract. Much recent work on proof-carrying code aims to build certifying compilers for single-inhe...
Abstract. Class-based objects can be programmed directly and e-ciently in a simple extension to ML. ...
We have previously shown how the discovery of classes from objects can be automated, and how the res...
In this thesis we explore the question of how to represent programming data structures in a constru...
In object-oriented programming one distinguishes two kinds of languages. Class-based languages are c...