ACM Home Page
Please provide us with feedback. Feedback
Digital Library logoTake a look at the new version of this page: [ beta version ]. Tell us what you think.
Higher-order control-flow analysis in retrospect: lessons learned, lessons abandoned
Full text PdfPdf (1.61 MB)
Source ACM SIGPLAN Notices archive
Volume 39 ,  Issue 4  (April 2004) table of contents
Best of PLDI 1979-1999
SPECIAL ISSUE: 1988 table of contents
Pages: 257 - 269  
Year of Publication: 2004
ISSN:0362-1340
Author
Olin Shivers  Georgia Institute of Technology, Atlanta, Georgia
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 13,   Downloads (12 Months): 49,   Citation Count: 2
Additional Information:

abstract   references   cited by   collaborative colleagues  

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

ABSTRACT

Traditional flow analysis techniques, such as the ones typically employed by optimising Fortran compilers, do not work for Scheme-like languages. This paper presents a flow analysis technique --- control flow analysis --- which is applicable to Scheme-like languages. As a demonstration application, the information gathered by control flow analysis is used to perform a traditional flow analysis problem, induction variable elimination. Extensions and limitations are discussed.The techniques presented in this paper are backed up by working code. They are applicable not only to Scheme, but also to related languages, such as Common Lisp and ML.


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.

 
1
2
3
4
 
5
Alain Deutsch. On determining lifetime and aliasing of dynamically allocated data in higher-order functional specifications (extended version). Research Report LIX/RR/90/11, LIX, Ecole Polytechnique, 91128 Palaiseau Cedex, France.
6
7
 
8
 
9
10
 
11
12
 
13
14
15
16
 
17
 
18
19
 
20
21
 
22
 
23
24
 
25
 
26
{Rabbit} Guy L. Steele. Rabbit: A Compiler for Scheme. AI-TR-474. MIT AI Lab (Cambridge, May 1978).
27
 
28
{LetS} Waters, Richard C. LETS: an Expressional Loop Notation. AI Memo 680. MIT AI Lab (Cambridge, October 1982).
 
29
{YLoop} Online documentation for the T3 implementation of the Yloop package is distributed by its current maintainer: Prof. Chris Riesbeck, Yale CS Dept. (riesbeck@yale.arpa).
30
 
31
{Hudak2} Hudak, Paul. Collecting Interpretations of Expressions (Preliminary Version). Research Report YALEU/DCS/RR-497. Yale University (August 1986).
32