2009
DOI: 10.1007/978-3-642-03013-0_2
|View full text |Cite
|
Sign up to set email alerts
|

Coinductive Type Systems for Object-Oriented Languages

Abstract: We propose a novel approach based on coinductive logic to specify type systems of programming languages. The approach consists in encoding programs in Horn formulas which are interpreted w.r.t. their coinductive Herbrand model. We illustrate the approach by first specifying a standard type system for a small object-oriented language similar to Featherweight Java. Then we define an idealized type system for a variant of the language where type annotations can be omitted. The type system involves infinite terms … Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
41
0

Year Published

2009
2009
2016
2016

Publication Types

Select...
7
1
1

Relationship

3
6

Authors

Journals

citations
Cited by 30 publications
(41 citation statements)
references
References 20 publications
0
41
0
Order By: Relevance
“…The restriction to well-formed types is required to avoid meaningless types; the same choice is used in [13]. A different restriction, called contractiveness, is used for instance in [4], where non-regular types are also allowed.…”
Section: Definition 1 (Types) the Pre-types Are The Regular Trees (Imentioning
confidence: 99%
“…The restriction to well-formed types is required to avoid meaningless types; the same choice is used in [13]. A different restriction, called contractiveness, is used for instance in [4], where non-regular types are also allowed.…”
Section: Definition 1 (Types) the Pre-types Are The Regular Trees (Imentioning
confidence: 99%
“…Union types were already included in object-oriented languages, in type systems where they were explicitly declared [12] or inferred from implicitly typed references [3]. We have taken the subtyping rules defined by other authors such as [19] and [8] (S-SUnionL and S-SUnionR), adding the new dynamic typing rule S-DUnionL.…”
Section: Union Typesmentioning
confidence: 99%
“…We recall that interpreting recursive definitions or rules coinductively is equivalent to considering also infinite terms and proof trees [7,4,11,15]. The CBS judgment uses value environments (see below), just for uniformity with the type judgment defined in Section 4.…”
Section: A Coinductive Semanticsmentioning
confidence: 99%
“…This work is mainly inspired on previous work by Ancona et al on abstract compilation for object-oriented languages [7,3,6,5,4], a novel approach which aims at reconciling type analysis and symbolic execution, where programs are compiled into a constraint logic program, and type analysis corresponds to solving a certain goal w.r.t. the coinductive semantics of CLP.…”
Section: Introductionmentioning
confidence: 99%