ACM Home Page
Please provide us with feedback. Feedback
Partial type inference for untyped functional programs
Full text PdfPdf (637 KB)
Source Conference on LISP and Functional Programming archive
Proceedings of the 1990 ACM conference on LISP and functional programming table of contents
Nice, France
Pages: 282 - 287  
Year of Publication: 1990
ISBN:0-89791-368-X
Author
Carsten K. Gomard  DIKU, Department of Computer Science, University of Copenhagen, Universitetsparken 1, DK - 2100 Copenhagen ø, Denmark
Sponsors
INRIA : Institut Natl de Recherche en Info et en Automatique
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGART: ACM Special Interest Group on Artificial Intelligence
SIGPLAN: ACM Special Interest Group on Programming Languages
SIGSAM: ACM Special Interest Group on Symbolic and Algebraic Manipulation
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 10,   Downloads (12 Months): 26,   Citation Count: 19
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/91556.91672
What is a DOI?

ABSTRACT

This extended abstract describes a way of inferring as much type information as possible about programs written in an untyped programming language. We present an algorithm that underlines the untypable parts of a program and assigns types to the rest. The algorithm is derived in a very simple manner from the well-known algorithm W of Damas & Milner [Damas and Milner 1982]. Our algorithm provides us with an easy solution to the problem of doing binding time analysis of the untyped higher order lambda calculus, and thereby of the wide range of programming languages based upon the lambda calculus. The techniques can also be used to eliminate superfluous runtime type checking in untyped functional languages, to produce better error messages from type analyzers for strongly typed languages, and to analyze feasibility of arity raising.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
Bondorf 1990
 
Bondorf et al. 1988
A. Bondorf, N.D. Jones, T. Mogensen, and P. Sestoft, Binding Time Analysis and the Taming o/Sell-Application, Draft, 18 pages, DIKU, University of Copenhagen, Denmark, August 1988.
Damas and Milner 1982
 
Fuh and Mishra 1989
 
Gomard 1989
C. K. Gomard, Higher Order Partial Evaluation - HOPE/or the Lambda Calculus, Master's thesis, DIKU, University of Copenhagen, Denmark, September 1989.
 
Jones et al. 1989
N.D. Jones, P. Sestoft, and H. S0ndergaard, Mix: A Self-Applicable Partial Evaluator for Experiments in Compiler Generation, Lisp and Symbolic Computation 2,1 (1989) 9-50.
 
Jones et al. 1990
N.D. Jones, C.K. Gomard, A. Bondorf, O. Danvy, and T.~. Mogensen, A Self-Applicable Partial Evaluator for the Lambda Calculus, in 1990 International Con/erence on Computer Languages, New Orleans, Louisiana, March 1990, IEEE Computer Society, 1990. To appear.
Kuo and Mishra 1989
 
Mogensen 1989
 
Nielson and Nielson 1988
Robinson 1965
 
Romanenko 1990
 
Schmidt 1988
D.A. Schmidt, Static Properties of Partial Evaluation, in Partial Evaluation and Mixed Computation, edited by D. Bj0rner, A.P. Ershov, and N.D. Jones, pp. 465-483, North-Holland, 1988.
 
Wadler 1990
P. Wadler, Linear Types Can Change the World!, in Programming Concepts and Methods iFIP TC~, 1990. (to appear).
Wand 1986

CITED BY  19