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

被引:0
|
作者
Wehr, Stefan [1 ]
Thiemann, Peter [2 ]
机构
[1] Foctis Res GmbH, D-79100 Freiburg, Germany
[2] Univ Freiburg, D-79110 Freiburg, Germany
关键词
Object-Oriented Programming; Subtyping; Bounded Existential Types; Undecidability; !text type='JAVA']JAVA[!/text;
D O I
10.1007/s00354-010-0100-1
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
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.
引用
收藏
页码:87 / 124
页数:38
相关论文
共 50 条
  • [21] Simplifying subtyping constraints
    Pottier, F
    ACM SIGPLAN NOTICES, 1996, 31 (06) : 122 - 133
  • [22] Decidability properties of recursive types
    Cardone, F
    Coppo, M
    THEORETICAL COMPUTER SCIENCE, PROCEEDINGS, 2003, 2841 : 242 - 255
  • [23] Subtyping union types
    Vouillon, R
    COMPUTER SCIENCE LOGIC, PROCEEDINGS, 2004, 3210 : 415 - 429
  • [24] Subtyping dependent types
    Aspinall, D
    Compagnoni, A
    11TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 1996, : 86 - 97
  • [25] SUBTYPING RECURSIVE TYPES
    AMADIO, RM
    CARDELLI, L
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1993, 15 (04): : 575 - 631
  • [26] Phantom types and subtyping
    Fluet, Matthew
    Pucella, Riccardo
    IFIP Advances in Information and Communication Technology, 2002, 96 : 448 - 460
  • [27] Subtyping dependent types
    Aspinall, D
    Compagnoni, A
    THEORETICAL COMPUTER SCIENCE, 2001, 266 (1-2) : 273 - 309
  • [28] Phantom types and subtyping
    Fluet, M
    Pucella, R
    FOUNDATIONS OF INFORMATION TECHNOLOGY IN THE ERA OF NETWORK AND MOBILE COMPUTING, 2002, 96 : 448 - 460
  • [29] Subtyping arithmetical types
    Gil, J
    ACM SIGPLAN NOTICES, 2001, 36 (03) : 276 - 289
  • [30] Phantom types and subtyping
    Fluet, Matthew
    Pucella, Riccardo
    JOURNAL OF FUNCTIONAL PROGRAMMING, 2006, 16 : 751 - 791