I just went through this a bit and it doesn't appear that the specification allow for polymorphism in the type system. Am I missing something here?
If that's true, it doesn't seem to address the issues highlighted by the paper, although does handle simple type checking across interfaces of primitive types.