GALILEO: a strongly-typed, interactive conceptual language
ACM Transactions on Database Systems (TODS)
On understanding types, data abstraction, and polymorphism
ACM Computing Surveys (CSUR) - The MIT Press scientific computation series
Type theories and object-oriented programmimg
ACM Computing Surveys (CSUR)
Systems programming with Modula-3
Systems programming with Modula-3
Semantics of programming languages: structures and techniques
Semantics of programming languages: structures and techniques
ACM Transactions on Programming Languages and Systems (TOPLAS)
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Bounded quantification is undecidable
Information and Computation
An extension of system F with subtyping
Information and Computation - Special conference issue: international conference on theoretical aspects of computer software
Theoretical aspects of object-oriented programming: types, semantics, and language design
Theoretical aspects of object-oriented programming: types, semantics, and language design
Divergence of F≤ type checking
Theoretical Computer Science
Pattern languages of program design
Pattern languages of program design
The development of type systems for object-oriented languages
Theory and Practice of Object Systems - Special issue: type systems
Complexity of kernel Fun subtype checking
Proceedings of the first ACM SIGPLAN international conference on Functional programming
Compiling standard ML to Java bytecodes
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Recursive subtyping revealed: (functional pearl)
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
A Theory of Objects
Fibonacci: a programming language for object databases
The VLDB Journal — The International Journal on Very Large Data Bases - Persistent object systems
TACS '97 Proceedings of the Third International Symposium on Theoretical Aspects of Computer Software
Recursive Types Are not Conservative over F
TLCA '93 Proceedings of the International Conference on Typed Lambda Calculi and Applications
Coinductive Axiomatization of Recursive Type Equality and Subtyping
TLCA '97 Proceedings of the Third International Conference on Typed Lambda Calculi and Applications
Relational Semantics for Recursive Types and Bounded Quantification
ICALP '89 Proceedings of the 16th International Colloquium on Automata, Languages and Programming
Modelling Features of Object-Oriented Languages in Second Order Functional Languages with Subtypes
Proceedings of the REX School/Workshop on Foundations of Object-Oriented Languages
Syntactic Considerations on Recursive Types
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
The Subtyping Problem for Second-Order Types is Undecidable
LICS '96 Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science
Subtyping Recursive Types in Kernel Fun - Abstract
LICS '99 Proceedings of the 14th Annual IEEE Symposium on Logic in Computer Science
A Symbolic Labelled Transition System for Coinductive Subtyping of F_{\mu\leq} Types
LICS '01 Proceedings of the 16th Annual IEEE Symposium on Logic in Computer Science
Hi-index | 0.00 |
We study subtype checking for recursive types in system kernel Fun, a typed λ-calculus with subtyping and bounded second-order polymorphism. Along the lines of [ACM Transactions on Programming Languages and Systems, 15(4) (1993) 575], we define a subtype relation over kernel Fun recursive types, and prove it to be transitive. We then show that the natural extension of the algorithm introduced in [ACM Transactions on Programming Languages and Systems, 15(4) (1993) 575] to compare first-order recursive types yields a non-complete algorithm. Finally, we prove the completeness and correctness of a different algorithm, which lends itself to efficient implementations.