Subtyping Constrained Types

A constrained type is a type that comes with a set of subtyping constraints on variables occurring in the type. Constrained type inference systems are a natural generalization of Hindley/Milner type inference to languages with subtyping. This paper develops several subtyping relations on polymorphic constrained types of a general form that allows recursive constraints and multiple bounds on type variables. Subtyping constrained types has applications to signature matching and to constrained type simplification.

[1]  Trevor Jim,et al.  Principal typings and type inference , 1996 .

[2]  Trevor Jim What are principal typings and what are they good for? , 1996, POPL '96.

[3]  Alexander Aiken,et al.  Soft typing with conditional types , 1994, POPL '94.

[4]  Robin Milner,et al.  A Theory of Type Polymorphism in Programming , 1978, J. Comput. Syst. Sci..

[5]  Luca Cardelli,et al.  On Binary Methods , 1995, Theory Pract. Object Syst..

[6]  Scott F. Smith,et al.  Type inference for recursively constrained types and its application to OOP , 1995, MFPS.

[7]  Jens Palsberg,et al.  Constrained types and their expressiveness , 1996, TOPL.

[8]  Prateek Mishra,et al.  Declaration-free type checking , 1985, POPL.

[9]  François Pottier,et al.  Simplifying subtyping constraints , 1996, ICFP '96.

[10]  Suresh Jagannathan,et al.  Effective Flow Analysis for Avoiding Run-Time Checks , 1995, SAS.

[11]  John C. Mitchell,et al.  Coercion and type inference , 1984, POPL.

[12]  Bruno Courcelle,et al.  Fundamental Properties of Infinite Trees , 1983, Theor. Comput. Sci..

[13]  John C. Mitchell,et al.  Type inference with simple subtypes , 1991, Journal of Functional Programming.

[14]  R. Lathe Phd by thesis , 1988, Nature.

[15]  Luca Cardelli,et al.  A Semantics of Multiple Inheritance , 1984, Inf. Comput..

[16]  Scott F. Smith,et al.  Sound polymorphic type inference for objects , 1995, OOPSLA.

[17]  Scott F. Smith,et al.  An interpretation of typed OOP in a language with state , 1995, LISP Symb. Comput..

[18]  Prateek Mishra,et al.  Type Inference with Subtypes , 1990, Theor. Comput. Sci..

[19]  Geoffrey Smith,et al.  Principal Type Schemes for Functional Programs with Overloading and Subtyping , 1994, Sci. Comput. Program..

[20]  Luca Cardelli,et al.  A Semantics of Multiple Inheritance , 1984, Information and Computation.

[21]  Gordon D. Plotkin,et al.  An ideal model for recursive polymorphic types , 1984, Inf. Control..

[22]  Jens Palsberg,et al.  Safety Analysis Versus Type Inference for Partial Types , 1992, Inf. Process. Lett..

[23]  Stefan Kaes Type inference in the presence of overloading, subtyping and recursive types , 1992, LFP '92.

[24]  Alexander Aiken,et al.  Type inclusion constraints and type inference , 1993, FPCA '93.

[25]  Pavel Curtis Constrained qualification in polymorphic type analysis , 1990 .

[26]  Luca Cardelli,et al.  Subtyping recursive types , 1991, POPL '91.