Loading...
Please wait, while we are loading the content...
Similar Documents
Higher-order unification, polymorphism, and subsorts (extended abstract (1990)
| Content Provider | CiteSeerX |
|---|---|
| Author | Nipkow, Tobias |
| Description | This paper analyzes the problems that arise in extending Huet’s higher-order unification algorithm from the simply typed λ-calculus to one with type variables. A simple, incomplete, but in practice very useful extension to Huet’s algorithm is discussed. This extension takes an abstract view of types. As a particular instance we explore a type system with ml-style polymorphism enriched with a notion of sorts. Sorts are partially ordered and classify types, thus giving rise to an order-sorted algebra of types. Type classes in the functional language Haskell can be understood as sorts in this sense. Sufficient conditions on the sort structure to ensure the existence of principal types are discussed. Finally we suggest a new type system for the λ-calculus which may pave the way to a complete unification algorithm for polymorphic terms. 1 |
| File Format | |
| Language | English |
| Publisher | Springer Verlag LNCS |
| Publisher Date | 1990-01-01 |
| Publisher Institution | Proceedings of the 2nd International Workshop on Conditional and Typed Rewriting Systems |
| Access Restriction | Open |
| Subject Keyword | Huet Algorithm Functional Language Haskell Complete Unification Algorithm Sort Structure Type System Typed Calculus Sufficient Condition Useful Extension Type Variable Particular Instance Principal Type Abstract View Order-sorted Algebra Huet Higher-order Unification Algorithm Polymorphic Term Type Class Ml-style Polymorphism New Type System Higher-order Unification |
| Content Type | Text |
| Resource Type | Article |