The Correctness and Termination of a Strictness Analysis Algorithm for Functional Programs with Lazy Types

There are two approaches to analysis of functional programs: abstract interpretation and type inference systems. A remarkable work of strictness analysis in the latter approach is an algorithm using a special kind of type, called a lazy type. However, this algorithm is defined as an abstract machine...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Konpyuta Sofutowea 2007-04, Vol.24 (2), p.2_41
Hauptverfasser: YOKOUCHI, Hirofumi, UBUKATA, Yusuke
Format: Artikel
Sprache:eng
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:There are two approaches to analysis of functional programs: abstract interpretation and type inference systems. A remarkable work of strictness analysis in the latter approach is an algorithm using a special kind of type, called a lazy type. However, this algorithm is defined as an abstract machine, and it is not so easy to analyze the algorithm. This paper defines a theoretical framework of lazy types, and proposes a new algorithm of strictness analysis on the basis of lazy types. We also examine the properties of the algorithm including correctness and termination. Moreover we show that our algorithm is convenient to implementation with pattern matching in functional programming languages.
ISSN:0289-6540
DOI:10.11309/jssst.24.2_41