Abstract | ||
---|---|---|
We propose a novel approach to constraint-based type inference based on coinductive logic. Constraint generation corresponds to translation into a conjunction of Horn clauses P , and constraint satisfaction is defined in terms of the coinductive Herbrand model of P . We illustrate the approach by formally defining this translation for a small object-oriented language similar to Featherweight Java, where type annotations in field and method declarations can be omitted. In this way, we obtain a very precise type inference and provide new insights into the challenging problem of type inference for object-oriented programs. Since the approach is deliberately declarative, we define in fact a formal specification for a general class of algorithms, which can be a useful road map to researchers. Furthermore, despite we consider here a particular language, the methodology could be used in general for providing abstract specifications of type inference for different kinds of programming languages. |
Year | DOI | Venue |
---|---|---|
2008 | 10.1007/978-3-642-02444-3_1 | TYPES |
Keywords | Field | DocType |
coinductive logic,novel approach,constraint generation corresponds,type inference,precise type inference,constraint-based type inference,constraint satisfaction,coinductive herbrand model,general class,type annotation,coinductive logic programming,coinduction,formal specification,programming language,object oriented languages,object oriented language,object oriented programming | Constraint satisfaction,Fifth-generation programming language,Programming language,Horn clause,Computer science,Constraint programming,Algorithm,Theoretical computer science,Type inference,Object language,Logic programming,Constraint logic programming | Conference |
Volume | ISSN | Citations |
5497 | 0302-9743 | 8 |
PageRank | References | Authors |
0.56 | 14 | 3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Davide Ancona | 1 | 727 | 69.43 |
Giovanni Lagorio | 2 | 212 | 17.98 |
Elena Zucca | 3 | 497 | 101.25 |