On understanding types, data abstraction, and polymorphism
ACM Computing Surveys (CSUR) - The MIT Press scientific computation series
Three partition refinement algorithms
SIAM Journal on Computing
Retrieving library identifiers via equational matching of types
CADE-10 Proceedings of the tenth international conference on Automated deduction
Communications of the ACM
ACM Transactions on Programming Languages and Systems (TOPLAS)
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Isomorphisms of types: from &lgr;-calculus to information retrieval and language design
Isomorphisms of types: from &lgr;-calculus to information retrieval and language design
Signature matching: a tool for using software libraries
ACM Transactions on Software Engineering and Methodology (TOSEM)
Specification matching of software components
SIGSOFT '95 Proceedings of the 3rd ACM SIGSOFT symposium on Foundations of software engineering
Automated support for seamless interoperability in polylingual software systems
SIGSOFT '96 Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering
Coinductive Axiomatization of Recursive Type Equality and Subtyping
TLCA '97 Proceedings of the Third International Conference on Typed Lambda Calculi and Applications
Type Inference with Recursive Type Equations
FoSSaCS '01 Proceedings of the 4th International Conference on Foundations of Software Science and Computation Structures
Efficient and Flexible Matching of Recursive Types
LICS '00 Proceedings of the 15th Annual IEEE Symposium on Logic in Computer Science
Efficient algorithms for isomorphisms of simple types
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
An Introduction to Dependent Type Theory
Applied Semantics, International Summer School, APPSEM 2000, Caminha, Portugal, September 9-15, 2000, Advanced Lectures
A short survey of isomorphisms of types
Mathematical Structures in Computer Science
Efficient algorithms for isomorphisms of simple types
Mathematical Structures in Computer Science
Subtyping recursive types modulo associative commutative products
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
Interoperability in service-based communities
BPM'05 Proceedings of the Third international conference on Business Process Management
Hi-index | 0.00 |
Palsberg and Zhao [17] presented an O(n2) Time algorithm for matching two recursive types. In this paper, we present an O(n log n) algorithm for the same problem. Our algorithm works by reducing the type matching problem to the well-understood problem of finding a size-stable partition of a graph. Our result may help improve systems, such as Polyspin and Mockingbird, that are designed to facilitate interoperability of software components.We also discuss possible applications of our algorithm to Java. Issues related to subtyping of recursive types are also discussed.