Proceedings Article10.1109/LICS.1999.782600
Type inference for recursive definitions
Assaf Kfoury,Santiago M. Pericás-Geertsen +1 more
- 02 Jul 1999
- pp 119-128
TL;DR: The undecidability result is obtained by a reduction from a particular adaptation of the semi-unification problem and is, interestingly, obtained by methods totally different from those used in the case of standard (or finite) semi- unification.
read more
Abstract: We consider type systems that combine universal types, recursive types, and object types. We study type inference in these systems under a rank restriction, following Leivant's notion of rank. To motivate our work, we present several examples showing how our systems can be used to type programs encountered in practice. We show that type inference in the rank-k system is decidable for k/spl les/2 and undecidable for k/spl ges/3. (Similar results based on different techniques are known to hold for System F, without recursive types and object types.) Our undecidability result is obtained by a reduction from a particular adaptation (which we call "regular") of the semi-unification problem and whose undecidability is, interestingly, obtained by methods totally different from those used in the case of standard (or finite) semi-unification.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
On Polymorphic Recursion, Type Systems, and Abstract Interpretation
Marco Comini,Ferruccio Damiani,Samuel Vrech +2 more
- 16 Jul 2008
TL;DR: The notion of principal typing is exploited to provide a complete stratification of ( let -free) Milner-Mycroft typability and solve the problem of finding type systems corresponding to the type abstract interpreters proposed by Gori and Levi.
Constraint-based modular secure information flow inference for object-oriented programs
D. Naumann,Qi Sun +1 more
- 01 Jan 2007
TL;DR: This thesis presents a constraint-based inference system for secure information flow for a Java-like language with method inheritance and override, which is inter-procedural and modular: incremental inference can be performed on individual program components, and result used as libraries for other components.
5
Type Inference for Bimorphic Recursion
Makoto Tatsuta,Ferruccio Damiani +1 more
TL;DR: This paper shows bimorphic recursion has principal types and decidable type inference, and shows that its typability becomes undecidable because of nesting of recursions when one removes the instantiation property from the bimomorphic recursion.
Principal Typings and True Rank 2 Intersection Typable Recursive Definitions
Ferruccio Damiani
- 01 Jan 2004
TL;DR: New typing rules for assigning rank 2 intersection types to (possibly mutually) recursive definitions are proposed, which rely entirely on principal typings, so they can be added to any system with principalTyping.
Type Inference for Bimorphic Recursion
Makoto Tatsuta,Ferruccio Damiani +1 more
- 07 Jun 2011
TL;DR: Bimorphic recursion as mentioned in this paper is a polymorphic type inference approach for recursion that allows assigning two different types to a recursively defined function: one for its recursive calls and the other for its calls outside its definition.
References
•Book
The Java Language Specification
James Gosling,Bill Joy,Guy L. Steele +2 more
- 12 Sep 1996
TL;DR: The Java Language Specification, Second Edition is the definitive technical reference for the Java programming language and provides complete, accurate, and detailed coverage of the syntax and semantics of the Java language.
A theory of type polymorphism in programming
TL;DR: This work presents a formal type discipline for polymorphic procedures in the context of a simple programming language, and a compile time type-checking algorithm w which enforces the discipline.
2.6K
Recursive Unsolvability of a Problem of Thue
TL;DR: Thue's problem is the problem of determining for arbitrarily given strings A, B on al, whether, or no, A and B are equivalent, and this problem is more readily placed if it is restated in terms of a special form of the canonical systems of [3].
What are principal typings and what are they good for
Trevor Jim
- 01 Jan 1996
TL;DR: The pragmatic value of the principal typing property is demonstrated, a property distinct from ML's principal type property, by studying a type system with principal typings that provides elegant support for separate compilation, including "smartest recompilation" and incremental type inference.
143
Objective ML: an effective object-oriented extension to ML
Didier Rémy,Jérôme Vouillon +1 more
TL;DR: Objective ML allows for most features of object-oriented languages including multiple in- heritance, methods returning self and binary methods as well as parametric classes, and demonstrates that ob- jects can be added to strongly typed languages based on ML polymorphism.
Related Papers (5)
Zoltán Csörnyei,Gergely Dévai +1 more
- 01 Jun 2008
Neal Nelson
- 25 Mar 1991
Mantis Hoi Ming Cheng
- 01 Jan 1987