Inheritance in smalltalk-80: a denotational definition
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An interpretation of objects and object types
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Matching for the lambda calculus of objects
Theoretical Computer Science - Special issue: Gentzen
A Theory of Objects
A lambda calculus of objects and method specialization
Nordic Journal of Computing
From Classes to Objects via Subtyping
ESOP '98 Proceedings of the 7th European Symposium on Programming: Programming Languages and Systems
TACS '97 Proceedings of the Third International Symposium on Theoretical Aspects of Computer Software
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
A Subtyping for the Fisher-Honsell-Mitchell Lambda Calculus of Objects
CSL '94 Selected Papers from the 8th International Workshop on Computer Science Logic
A Delegation-based Object Calculus with Subtying
FCT '95 Proceedings of the 10th International Symposium on Fundamentals of Computation Theory
An Interpretation of Extensible Objects
FCT '99 Proceedings of the 12th International Symposium on Fundamentals of Computation Theory
Full Abstraction for First-Order Objects with Recursive Types and Subtyping
LICS '98 Proceedings of the 13th Annual IEEE Symposium on Logic in Computer Science
Simple, Efficient Object Encoding using Intersection Types
Simple, Efficient Object Encoding using Intersection Types
A denotational semantics of inheritance
A denotational semantics of inheritance
Hi-index | 0.00 |
We present a type-theoretic encoding of extensible objects and types. The ambient theory is a higher-order λ-calculus with polymorphic types, recursive types and operators, and subtyping. Using this theory, we give a type preserving and computationally adequate translation of a full-fledged object calculus that includes object extension and override. The translation specializes to calculi of nonextensible objects and validates the expected subtyping relationships.