Type-Preserving Compilation of Featherweight Java

Abstract

We present an efficient encoding of core Java constructs in a simple, implementable typed intermediate language. The encoding, after type erasure, has the same operational behavior as a standard implementation using vtables and self application for method invocation. Classes inherit super-class methods with no overhead. We support mutually recursive classes while preserving separate compilation. Our strategy extends naturally to a significant subset of Java, including interfaces and privacy. The formal translation using Featherweight Java allows comprehensible type-preservation proofs and serves as a starting point for extending the translation to new features.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Jan 01, 2005
Accession Number
ADA436466

Entities

People

  • Christopher League
  • Valery Trifonov
  • Zhong Shao

Organizations

  • Yale University

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Abstracts
  • Calculus
  • Coding
  • Compilers
  • Computer Access Control
  • Computer Science
  • Construction
  • Dictionaries
  • Hierarchies
  • Judgment
  • Language
  • Object Code
  • Semantics
  • Sequences
  • Side Effects
  • Standards
  • Translations

Fields of Study

  • Computer science

Readers

  • Computational Linguistics
  • Computer Programming and Software Development.
  • Database Systems and Applications