ACM Home Page
Please provide us with feedback. Feedback
Polymorphic strictness analysis using frontiers
Full text PdfPdf (760 KB)
Source ACM/SIGPLAN Workshop Partial Evaluation and Semantics-Based Program Manipulation archive
Proceedings of the 1993 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation table of contents
Copenhagen, Denmark
Pages: 186 - 193  
Year of Publication: 1993
ISBN:0-89791-594-1
Author
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 1,   Downloads (12 Months): 5,   Citation Count: 0
Additional Information:

abstract   references   index terms  

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/154630.154649
What is a DOI?

ABSTRACT

This paper shows how to implement sensible polymorphic strictness analysis using the Frontiers algorithm. A central notion is to only ever analyse each function once, at its simplest polymorphic instance. Subsequent non-base uses of functions are dealt with by generalising their simplest instance analyses. This generalisation is done using an algorithm developed by Baraki, based on embedding-closure pairs. Compared with an alternative approach of expanding the program out into a collection of monomorphic instances, this technique is hundreds of times faster for realistic programs. There are some approximations involved, but these do not seem to have a detrimental effect on the overall result. The overall effect of this technology is to considerably expand the range of programs for which the Frontiers algorithm gives useful results reasonably quickly.


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.

 
Abr85
AJ91
 
Bar91
 
BHA85
 
Bur87
G.L. Burn. Abstract Interpretation and the Parallel Evaluation of Functional Languages. PhD thesis, Imperial College, University of London, March 1987.
 
CP85
 
HH91
Sebastian Hunt and Chris Hankin. Fixed points and frontiers: a new perspective. Journal of Functional Programming, 1(1):91- 120, January 1991.
 
HH92
 
Hun91
Sebastian Hunt. Abstract Interpretation o} Functional Languages: From Theory to Practice. PhD thesis, imperial College, University of London, 1991.
 
HWe90
P. Hudak and P. Wadler (editors). Report on the programming language Haskell, a non-strict purely functional language (Version 1.0). Technical Report YALEU/DCS/RR777, Yale University, Department of Computer Science, April 1990.
 
KHL91
 
Mil78
R. Mflner. A theory of type polymorphism in programming. Journal of Computer and System Science, 17(3):348-375, 1978.
 
PL92
 
Sew91
Julian Seward. Towards a strictness analyser for haskell: Putting theory into practice. Master's thesis, University of Manchester, Department of Computer Science, 1991. Available as University of Manchester Technical Report UMCS-92-2-2.
 
Wad87
P.L. Wadler. Strictness analysis on non-fiat domains (by abstract interpretation over finite domains). In S. Abramsky and C.L. Hankjn, editors, Abstract Interpretation of Declarative Languages, chapter 12, pages 266-275. Ellis Horwood Ltd., Chichester, West Sussex, England, 1987.