From Monomorphic to Polymorphic Well-Typings and Beyond

Tom Schrijvers, Maurice Bruynooghe, John Patrick Gallagher

Publikation: Bidrag til tidsskriftKonferenceartikelForskningpeer review

Resumé

Type information has many applications; it can e.g. be used in optimized compilation, termination analysis and error detection. However, logic programs are typically untyped. A well-typed program has the property that it behaves identically on well-typed goals with or without type checking. Hence the automatic inference of a well-typing is worthwhile. Existing inferences are either cheap and inaccurate, or accurate and expensive. By giving up the requirement that all calls to a predicate have types that are instances of a unique polymorphic type but instead
allowing multiple polymorphic typings for the same predicate, we obtain a novel strongly-connected-component-based analysis that provides a good compromise between accuracy and computational cost.
OriginalsprogEngelsk
BogserieLecture Notes in Computer Science
Sider (fra-til)152-167
Antal sider16
ISSN0302-9743
StatusUdgivet - 2009
BegivenhedLogic-Based Program Synthesis and Transformation, LOPSTR 2008 - Valencia, Spanien
Varighed: 17 jul. 200818 jul. 2008
Konferencens nummer: 18

Konference

KonferenceLogic-Based Program Synthesis and Transformation, LOPSTR 2008
Nummer18
LandSpanien
ByValencia
Periode17/07/200818/07/2008

Bibliografisk note

Volumne: 5438

Citer dette

@inproceedings{6c3bee6016cc11de8600000ea68e967b,
title = "From Monomorphic to Polymorphic Well-Typings and Beyond",
abstract = "Type information has many applications; it can e.g. be used in optimized compilation, termination analysis and error detection. However, logic programs are typically untyped. A well-typed program has the property that it behaves identically on well-typed goals with or without type checking. Hence the automatic inference of a well-typing is worthwhile. Existing inferences are either cheap and inaccurate, or accurate and expensive. By giving up the requirement that all calls to a predicate have types that are instances of a unique polymorphic type but instead allowing multiple polymorphic typings for the same predicate, we obtain a novel strongly-connected-component-based analysis that provides a good compromise between accuracy and computational cost.",
keywords = "type inference, logic programming",
author = "Tom Schrijvers and Maurice Bruynooghe and Gallagher, {John Patrick}",
note = "Volumne: 5438",
year = "2009",
language = "English",
pages = "152--167",
journal = "Lecture Notes in Computer Science",
issn = "0302-9743",
publisher = "Physica-Verlag",

}

From Monomorphic to Polymorphic Well-Typings and Beyond. / Schrijvers, Tom; Bruynooghe, Maurice; Gallagher, John Patrick.

I: Lecture Notes in Computer Science, 2009, s. 152-167.

Publikation: Bidrag til tidsskriftKonferenceartikelForskningpeer review

TY - GEN

T1 - From Monomorphic to Polymorphic Well-Typings and Beyond

AU - Schrijvers, Tom

AU - Bruynooghe, Maurice

AU - Gallagher, John Patrick

N1 - Volumne: 5438

PY - 2009

Y1 - 2009

N2 - Type information has many applications; it can e.g. be used in optimized compilation, termination analysis and error detection. However, logic programs are typically untyped. A well-typed program has the property that it behaves identically on well-typed goals with or without type checking. Hence the automatic inference of a well-typing is worthwhile. Existing inferences are either cheap and inaccurate, or accurate and expensive. By giving up the requirement that all calls to a predicate have types that are instances of a unique polymorphic type but instead allowing multiple polymorphic typings for the same predicate, we obtain a novel strongly-connected-component-based analysis that provides a good compromise between accuracy and computational cost.

AB - Type information has many applications; it can e.g. be used in optimized compilation, termination analysis and error detection. However, logic programs are typically untyped. A well-typed program has the property that it behaves identically on well-typed goals with or without type checking. Hence the automatic inference of a well-typing is worthwhile. Existing inferences are either cheap and inaccurate, or accurate and expensive. By giving up the requirement that all calls to a predicate have types that are instances of a unique polymorphic type but instead allowing multiple polymorphic typings for the same predicate, we obtain a novel strongly-connected-component-based analysis that provides a good compromise between accuracy and computational cost.

KW - type inference

KW - logic programming

M3 - Conference article

SP - 152

EP - 167

JO - Lecture Notes in Computer Science

JF - Lecture Notes in Computer Science

SN - 0302-9743

ER -