runtime type system for Java
