Polymorphic dynamic typing: aspects of proof theory and inference

Abstract: "We study dynamic typing in continuation of Henglein's dynamically typed [lambda]-calculus, with particular regard to proof theoretic aspects and aspects of polymorphic completion inference. Dynamically typed [lambda]-calculus provides a formal framework within which we can reaso...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
1. Verfasser: Rehof, Jakob (VerfasserIn)
Format: Abschlussarbeit Buch
Sprache:English
Veröffentlicht: København DIKU 1995
Schriftenreihe:Datalogisk Institut <København>: DIKU-Rapport 1995,9
Schlagworte:
Zusammenfassung:Abstract: "We study dynamic typing in continuation of Henglein's dynamically typed [lambda]-calculus, with particular regard to proof theoretic aspects and aspects of polymorphic completion inference. Dynamically typed [lambda]-calculus provides a formal framework within which we can reason in a precise manner about properties of the process of completion for higher order programming languages. Completions arise from raw programs by insertion of type coercions which model run-time type operations of tagging and checking/untagging. Central among the problems studied in dynamic typing are the notions of minimization of run-time type coercions in completions and safety of completions. From the monomorphic framework of Henglein's system, we work towards a polymorphic generalization which eventually comprises Hindley-Milner style polymorphism, discriminative, tagged sum types, regular recursive types and so-called coercive types with a notion of coercion parameterization
The resulting system can be seen as a form of polymorphic qualified type system which aims at a common generalization of dynamic typing and certain systems of soft typing. Starting from an equational presentation of categorical co-products, we develop a dynamic typing calculus within which we can reason about completion. We develop a generalized theory of conversion and reduction on coercions and completions. We establish fundamental proof theoretic properties of the calculus, including confluence of general completion reduction and existence and uniqueness of minimal completions in a pragmatically important class of completions. We also give a proof-theoretic treatment of a generalization of Thatte's quasi-static typing which arises naturally in the framework of dynamic typing. We study problems of automatic completion inference in our generalized setting, and we describe an implementation of a simple, global dynamic type analysis
We investigate the problem of achieving modularity of inference, and we argue that safety and minimality are conflicting goals in a modular setting. It is suggested that the use of coercion parameters is an important ingredient in reconciling these goals. The problem of dynamic type inference for a realistic dynamically typed language is studied, with special reference to Scheme. Completion inference as a basis for static debugging tools and for a high-level translation of Scheme to ML is investigated. We identify major problems and suggest solutions to some of them.
Beschreibung:VIII, 230 S.

Es ist kein Print-Exemplar vorhanden.

Fernleihe Bestellen Achtung: Nicht im THWS-Bestand!