Polymorphic Type Inference and Containment

Abstract Type expressions may be used to describe the functional behavior of untyped lambda terms. We present a general semantics of polymorphic type expressions over models of untyped lambda calculus and give complete rules for inferring types for terms. Some simplified typing theories are studied in more detail, and containments between types are investigated.

[1]  H. Friedman Equality between functionals , 1975 .

[2]  J. Roger Hindley,et al.  The Completeness Theorem for Typing lambda-Terms , 1983, Theor. Comput. Sci..

[3]  A. Troelstra Metamathematical investigation of intuitionistic arithmetic and analysis , 1973 .

[4]  John C. Reynolds,et al.  Towards a theory of type structure , 1974, Symposium on Programming.

[5]  Albert R. Meyer,et al.  What is a Model of the Lambda Calculus? , 1982, Inf. Control..

[6]  Dana S. Scott,et al.  Data Types as Lattices , 1976, SIAM J. Comput..

[7]  J. Roger Hindley Curry's Type-Rules are Complete with Respect to the F-Semantics too , 1983, Theor. Comput. Sci..

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

[9]  Ravi Sethi,et al.  A semantic model of types for applicative languages , 1982, LFP '82.

[10]  Robin Milner,et al.  Principal type-schemes for functional programs , 1982, POPL '82.

[11]  R. Statman Equality between Functionals Revisited , 1985 .

[12]  Mike Paterson,et al.  Linear unification , 1976, STOC '76.

[13]  M. Hyland A Syntactic Characterization of the Equality in Some Models for the Lambda Calculus , 1976 .

[14]  Christopher P. Wadsworth,et al.  The Relation Between Computational and Denotational Properties for Scott's Dinfty-Models of the Lambda-Calculus , 1976, SIAM J. Comput..

[15]  John C. Shepherdson,et al.  Effective operations on partial recursive functions , 1955 .

[16]  Richard Statman,et al.  Empty types in polymorphic lambda calculus , 1987, POPL '87.

[17]  Nancy McCracken,et al.  The Typechecking of Programs with Implicit Type Structure , 1984, Semantics of Data Types.

[18]  Daniel Leivant,et al.  The Expressiveness of Simple and Second-Order Type Structures , 1983, JACM.

[19]  John C. Mitchell,et al.  Abstract types have existential types , 1985, POPL.

[20]  Mario Coppo,et al.  Type inference and logical relations , 1986, LICS.

[21]  J. A. Robinson,et al.  A Machine-Oriented Logic Based on the Resolution Principle , 1965, JACM.

[22]  Gordon D. Plotkin,et al.  An Ideal Model for Recursive Polymorphic Types , 1986, Inf. Control..

[23]  James E. Donahue On the Semantics of "Data Type" , 1977, SIAM J. Comput..

[24]  Mariangiola Dezani-Ciancaglini,et al.  F-Semantics for Intersection Type Discipline , 1984, Semantics of Data Types.

[25]  Leon Henkin,et al.  Completeness in the theory of types , 1950, Journal of Symbolic Logic.

[26]  Mariangiola Dezani-Ciancaglini,et al.  A filter lambda model and the completeness of type assignment , 1983, Journal of Symbolic Logic.

[27]  R. Hindley The Principal Type-Scheme of an Object in Combinatory Logic , 1969 .

[28]  Daniel Leivant,et al.  Polymorphic type inference , 1983, POPL '83.