Type Erasure: Breaking the Java Type System

David Van Horn <[email protected]> Thu, 02 Dec 2004 10:49:46 -0500
Newsgroups gmane.org.ballistichelmet.lambda
Message-ID <[email protected]>
[ Church group seminar. ]

   Title : Type Erasure: Breaking the Java Type System
  Speaker: Suad Alagic
           University of Southern Maine
   When  : 4:00pm, Dec. 6
   Where : 111 Cummington ST, MCS 180

ABSTRACT:
Type erasure is an implementation idiom for extending Java with
generics (parametric polymorphism) underlying the most recent release
Java 5.0. We show that this idiom is provably incorrect and as such it
leads to major violations of the Java type system that appear in the
new release. The new release thus turns a type safe language into an
unsafe one as static type checking does not work any more.  The
run-time type information in this release is incorrect so that dynamic
type checking can fail in unexpected ways. This leads to major
problems for the programmers relying on the Java reflective
capabilities. Further problems are in type violations related to
persistence and the Java serialization mechanism.  We show that the
problem of extending Java with parametric polymorphism does not have a
correct solution unless the Java Virtual Machine is extended to handle
it properly.  We explain the subtleties required by a correct
implementation technique that includes representation of parametric
classes in the standard Java class file format, representation of the
instantiated parametric class objects, extensions of the Java Core
Reflection to report type information about (instantiated) parametric
classes, and the loading techniques required by this solution for
extending Java with generics. Previous solutions for this problem are
analyzed as well.
Joint work with Brian Cabana, Jeff Faulkner and Mark Royer.


Short Bio:
Suad Alagic is Computer Science Professor at the Univeristy of
Southern Maine in Portland. He holds PhD in Computer Science from the
University of Massachusetts at Amherst. He research results were
published in proceedings of conferences such as OOPSLA, ECOOP, DBPL
etc.  as well as in journals such as ACM Transactions on Database
Systems, Journal of Computer and Systems Sciences, Information Systems
Journal, Acta Informatica, Theoretical Computer Science, Information
and Computation, Object-Oriented Systems, Theory and Practice of
Object Systems and Computer Journal. His recent research projects are
"A Family of the ODMG Object Models" from NSF and "A Typed and
Temporal Object-Oriented Technology" from DOD. His recent industrial
associations are: an invited staff member of the ODMG (Object Database
Management Group) and a visiting researcher at Microsoft Research.

------------
Regards,
Dengping