School of Computing

Polymorphic type checking by interpretation of code

Stefan Kahrs

LFCS report ECS-LFCS-92-238, University of Edinburgh, Laboratory for Foundations of Computer Science, September 1992.

Abstract

The type system of most modern functional programming languages is based on Milner's polymorphism. A compiler or interpreter usually checks (or infers) the types of functions and other values by directly inspecting the source code of a program.

Here, another approach is taken: The program is first translated into code for a stack machine and then a non-standard interpreter applied to this code checks (or infers) the type of the corresponding values. This can be seen as an abstract interpretation of the object code of the program.

Download publication 69 kbytes

Bibtex Record

@techreport{582,
author = {Stefan Kahrs},
title = {Polymorphic Type Checking by Interpretation of Code},
month = {September},
year = {1992},
pages = {182-196},
keywords = {determinacy analysis, Craig interpolants},
note = {},
doi = {},
url = {http://www.cs.kent.ac.uk/pubs/1992/582},
    institution = {University of Edinburgh, Laboratory for Foundations of Computer Science},
    number = {ECS-LFCS-92-238},
    type = {LFCS report},
}

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 21/03/2014