On the Decidability of Subtyping with Bounded Existential Types and Implementation Constraints

Stefan Wehr and Peter Thiemann

New Generation Computing, 29:87-124, January 2011.

Abstract

Bounded existential types are a powerful language feature for modeling partial data abstraction and information hiding. However, existentials do not mingle well with subtyping as found in current object-oriented languages: the subtyping relation is already undecidable for very restrictive settings.

This paper considers two subtyping relations defined by extracting the features specific to existentials from current language proposals (JavaGI, WildFJ, and Scala) and shows that both subtyping relations are undecidable. One of the two subtyping relations remains undecidable even if bounded existential types are restricted to the equivalent of interface types.

With the goal of regaining decidable type checking for the JavaGI language, the paper also discusses various restrictions including the elimination of bounded existentials from the language as well as possible amendments to regain some of their features.

Bibtex

@ARTICLE{WehrThiemann2011,
  author = {Stefan Wehr and Peter Thiemann},
  title = {On the Decidability of Subtyping with Bounded Existential Types and Implementation Constraints},
  booktitle = {Proceedings of the Seventh Asian Symposium on Programming Languages and Systems},
  journal = {New Generation Computing},
  publisher = {Ohmsha, Ltd.},
  pages = {87-124},
  volume = 29,
  issue = 1,
  year = 2011,
  month = {January}
}

Resources

Last modified: 2015-06-10T22:24:05+02:00