Sciweavers

ICFP
1999
ACM

Representing Java Classes in a Typed Intermediate Language

13 years 9 months ago
Representing Java Classes in a Typed Intermediate Language
We propose a conservative extension of the polymorphic lambda calculus (A5B ) as an intermediate language for compiling languages with name-based class and interface hierarchies. Our extension enriches standard A B with recursive types, existential types, and row polymorphism, but only ordered records with no subtyping. Basing our language on A B makes it also a suitable target for translation from other higher-order languages; this enables the safe interoperation between class-based and higher-order languages and the reuse of common type-directed optimization techniques, compiler back ends, and runtime support. We present the formal semantics of our intermediate language and illustrate its features by providing a formal translation from a subset of Java, including classes, interfaces, and private instance variables. The translation preserves the name-based hierarchical relation between Java classes and interfaces, and allows access to private instance variables of parameters of the s...
Christopher League, Zhong Shao, Valery Trifonov
Added 02 Aug 2010
Updated 02 Aug 2010
Type Conference
Year 1999
Where ICFP
Authors Christopher League, Zhong Shao, Valery Trifonov
Comments (0)