Proceedings of the 2nd VDM-Europe Symposium on VDM---The Way Ahead
Proceedings of the 1988 ACM conference on LISP and functional programming
LISP88 Lisp & Functional Programming 88
Type inference in a database programming language
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
ML with extended pattern matching and subtypes
LFP '88 Proceedings of the 1988 ACM conference on LISP and functional programming
Journal of Symbolic Computation
How to make ad-hoc polymorphism less ad hoc
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type checking records and variants in a natural extension of ML
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the Second European Symposium on Programming
Proceedings of the Second European Symposium on Programming
Proceedings of the Second European Symposium on Programming
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '91 Proceedings of the 18th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
Type classes and overloading resolution via order-sorted unification
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
On the complexity of ML typeability with overloading
Proceedings of the 5th ACM conference on Functional programming languages and computer architecture
Principal type-schemes for functional programs
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Parametric Overloading in Polymorphic Programming Languages
ESOP '88 Proceedings of the 2nd European Symposium on Programming
Polymorphic Subtype Inference: Closing the Theory-Practice Gap
TAPSOFT '89 Proceedings of the International Joint Conference on Theory and Practice of Software Development, Volume 2: Advanced Seminar on Foundations of Innovative Software Development II and Colloquium on Current Issues in Programming Languages
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A practical soft type system for Scheme
LFP '94 Proceedings of the 1994 ACM conference on LISP and functional programming
Algorithms for type inference with coercions
ISSAC '94 Proceedings of the international symposium on Symbolic and algebraic computation
Sound polymorphic type inference for objects
Proceedings of the tenth annual conference on Object-oriented programming systems, languages, and applications
FPCA '95 Proceedings of the seventh international conference on Functional programming languages and computer architecture
Constrained types and their expressiveness
ACM Transactions on Programming Languages and Systems (TOPLAS)
What are principal typings and what are they good for?
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A practical soft type system for scheme
ACM Transactions on Programming Languages and Systems (TOPLAS)
Minimal typings in atomic subtyping
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type checking higher-order polymorphic multi-methods
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Pragmatic subtyping in polymorphic languages
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Type-base flow analysis: from polymorphic subtyping to CFL-reachability
POPL '01 Proceedings of the 28th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Open and closed scopes for constrained genericity
Theoretical Computer Science
Type classes with more higher-order polymorphism
Proceedings of the seventh ACM SIGPLAN international conference on Functional programming
Optimal Representations of Polymorphic Types with Subtyping
Higher-Order and Symbolic Computation
Explicit Graphs in a Functional Model for Spatial Databases
IEEE Transactions on Knowledge and Data Engineering
PADO '01 Proceedings of the Second Symposium on Programs as Data Objects
Concurrent Execution Semantics of DAML-S with Subtypes
ISWC '02 Proceedings of the First International Semantic Web Conference on The Semantic Web
ASM '00 Proceedings of the International Workshop on Abstract State Machines, Theory and Applications
ObjectCurry: An Object-Oriented Extension of the Declarative Multi-Paradigm Language Curry
IFL '00 Selected Papers from the 12th International Workshop on Implementation of Functional Languages
Formalisation and implementation of an algorithm for bytecode verification of @NonNull types
Science of Computer Programming
General homomorphic overloading
IFL'04 Proceedings of the 16th international conference on Implementation and Application of Functional Languages
Hi-index | 0.00 |
We present a unified approach to type inference in the presence of overloading and coercions based on the concept of constrained types. We define a generic inference system, show that subtyping and overloading can be treated as a special instance of this system and develop a simple algorithm to compute principal types. We prove the decidability of type inference for the class of decomposable predicates and develop a canonical representation for principal types based on most accurate simplifications of constraint sets. Finally, we investigate the extension of our techniques to recursive types.