2000
DOI: 10.1145/354222.353192
|View full text |Cite
|
Sign up to set email alerts
|

An efficient class and object encoding

Abstract: 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 … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1

Citation Types

0
2
0

Year Published

2002
2002
2022
2022

Publication Types

Select...
3

Relationship

2
1

Authors

Journals

citations
Cited by 3 publications
(2 citation statements)
references
References 36 publications
0
2
0
Order By: Relevance
“…Transformations of programs in these languages must produce programs in these languages themselves, and in particular produce programs that still type check-a property called typability preservation. In a similar sense, a number of recent compilers use typed intermediate languages (e.g., [5][6][7][8]) to obtain debugging and optimisation benefits [5,9]. Such compilers also require transformations that are typability preserving when translating from one typed representation to another.…”
Section: Introductionmentioning
confidence: 99%
“…Transformations of programs in these languages must produce programs in these languages themselves, and in particular produce programs that still type check-a property called typability preservation. In a similar sense, a number of recent compilers use typed intermediate languages (e.g., [5][6][7][8]) to obtain debugging and optimisation benefits [5,9]. Such compilers also require transformations that are typability preserving when translating from one typed representation to another.…”
Section: Introductionmentioning
confidence: 99%
“…For example, it can require a type that has a method that returns an object of the type being bounded. This form of bound is useful for binary methods and in typing object encodings [Gle00]. Treating a type variable as being a subtype of its bound when that bound can refer to it is like treating a recursive type as being equal to its unrolling, and similar issues arise to formalising such type systems.…”
mentioning
confidence: 99%