[Prev][Next][Index][Thread]

New paper: On Inner Classes



We are pleased to announce the availability of a new paper formalizing
key features of inner classes of Java.  The full paper is available as:

     http://www.yl.is.s.u-tokyo.ac.jp/~igarashi/papers/fji-tr.ps.gz
     http://www.cis.upenn.edu/~bcpierce/papers/fji-tr.ps

A shorter and more readable version (without proofs), which will be
presented at FOOL7 in January 2000, is also available as:

     http://www.yl.is.s.u-tokyo.ac.jp/~igarashi/papers/fji-fool.ps.gz
     http://www.cis.upenn.edu/~bcpierce/papers/fji.ps

Regards,

	Atsushi Igarashi
	Benjamin Pierce

--------------------------------------------------------------------

                          On Inner Classes

		Atsushi Igarashi and Benjamin C. Pierce

ABSTRACT:

Inner classes in object-oriented languages play a role similar to
nested function definitions in functional languages, allowing an
object to export other objects with direct access to its own methods
and instance variables.  However, the similarity is deceptive: a close
look at inner classes reveals significant subtleties arising from
their interactions with inheritance.

The goal of this work is a precise understanding of the essential
features of inner classes; our object of study is a fragment of Java
with inner classes and inheritance (and almost nothing else).  We
begin by giving a DIRECT reduction semantics for this language.  We
then give an alternative semantics by TRANSLATION into a yet smaller
language with only top-level classes, closely following Java's Inner
Classes Specification.  We prove that the two semantics coincide, in
the sense that translation commutes with reduction, and that both are
type-safe.