See this document in CiteSeerX!

From Recursion to Iteration: What Are the Optimizations? (2000)  (Make Corrections)  (11 citations)
Yanhong A. Liu, Scott D. Stoller
Partial Evaluation and Semantic-Based Program Manipulation



  Home/Search   Context   Related

 
View or download:
indiana.edu/pub/li...RecToItrPEPM00.ps
sunysb.edu/pub/stoller...PEPM2000.ps.gz
Cached:  PS.gz  PS  PDF   Image  Update  Help

From:  indiana.edu/~liu/ (more)
(Enter author homepages)

Rate this article: (best)
  Comment on this article  
(Enter summary)

Abstract: Transforming recursion into iteration eliminates the use of stack frames during program execution. It has been studied extensively. This paper describes a powerful and systematic method, based on incrementalization, for transforming general recursion into iteration: identify an input increment, derive an incremental version under the input increment, and form an iterative computation using the incremental version. Exploiting incrementalization yields iterative computation in a uniform way and... (Update)

Context of citations to this paper:   More

...as arrays for some examples. Our recent work on transforming recursion into iteration can help eliminate the linear stack space used [36]. There are dynamic programming problems, e.g. 0 1 knapsack, for which the use of an array, with constant time access to elements,...

.... used successfully to optimize loops, arrays, recursive functions, and recursive data structures [15] and transform recursion to iteration [17], the power of the method in general remains unknown. A similar method has also been used to optimize set and fixed point operations [4,...

Cited by:   More
A Monadic Approach for Avoiding Code Duplication when .. - Swadi, Taha.. (2006)   (Correct)
Staging Dynamic Programming Algorithms - Kedar Swadi Kswadi (2005)   (Correct)
Iterate, incrementalize, and implement: A systematic approach to.. - Liu   (Correct)

Similar documents (at the sentence level):
62.0%:   From Recursion to Iteration: What Are the Optimizations? - Liu, Stoller (1999)   (Correct)

Active bibliography (related documents):   More   All
0.6:   Dynamic Programming via Static Incrementalization - Liu, Stoller (1999)   (Correct)
0.5:   Optimization of Functional Programs by Grammar Thinning - Webber (1995)   (Correct)
0.5:   Efficient Computation via Incremental Computation - Liu (1999)   (Correct)

Similar documents based on text:   More   All
0.4:   Program Optimization Using Indexed and Recursive Data Structures - Liu, Stoller (2002)   (Correct)
0.4:   Optimizing Aggregate Array Computations in Loops - Liu, Stoller, Li, Rothamel   (Correct)
0.3:   Principled Strength Reduction - Liu (1996)   (Correct)

Related documents from co-citation:   More   All
9:   Introduction to algorithms (context) - Cormen, Leiserson et al. - 1991
9:   Dynamic programming via static incrementalization - Liu, Stoller - 1999
8:   Static caching for incremental computation - Liu, Stoller et al. - 1998

BibTeX entry:   (Update)

Y. A. Liu and S. D. Stoller. From recursion to iteration: what are the optimizations? Technical Report TR 527, Computer Science Department, Indiana University, Bloomington, Indiana, July 1999. http://citeseer.ist.psu.edu/liu00from.html   More

@inproceedings{ liu00from,
    author = "Yanhong A. Liu and Scott D. Stoller",
    title = "From Recursion to Iteration: What are the Optimizations?",
    booktitle = "Partial Evaluation and Semantic-Based Program Manipulation",
    pages = "73-82",
    year = "2000",
    url = "citeseer.ist.psu.edu/liu00from.html" }
Citations (may not include all citations):
3972   Introduction to Algorithms (context) - Cormen, Leiserson et al. - 1990
1450   The Design and Analysis of Computer Algorithms (context) - Aho, Hopcroft et al. - 1974
862   The Java Language Specification - Golsing, Joy et al. - 1997
385   A transformation system for developing recursive programs - Burstall, Darlington - 1977
273   Can programming be liberated from the von Neumann style (context) - Backus - 1978
245   The Omega Test: A fast and practical integer programming alg.. - Pugh - 1992
204   KIDS: A semiautomatic program development system - Smith - 1990
121   Proving and applying program transformations expressed with .. (context) - Huet, Lang - 1978
106   Essentials of Programming Languages (context) - Friedman, Wand et al. - 1992
81   Specification and Transformation of Programs--- A Formal App.. (context) - Partsch - 1990
72   A semantic model of reference counting and its abstraction - Hudak - 1986
57   Modern Compiler Implementation in Java (context) - Appel - 1998
57   Systematic derivation of incremental programs - Liu, Teitelbaum - 1995
56   The interprocedural analysis and automatic parallellization .. (context) - Harrison - 1989
54   Rules and strategies for transforming functional and logic p.. - Pettorossi, Proietti - 1996
53   Compile-time garbage collection by sharing analysis (context) - Jones, Le M'etayer - 1989
47   Continuation-based program transformation strategies (context) - Wand - 1980
44   Algorithmic Language and Program Development (context) - Bauer, Wossner - 1982
39   Discovering auxiliary information for incremental computatio.. - Liu, Stoller et al. - 1996
39   A system which automatically improves programs (context) - Darlington, Burstall - 1976
36   Finite differencing of computable expressions (context) - Paige, Koenig - 1982
33   Static caching for incremental computation - Liu, Stoller et al. - 1998
33   Real-time simulation of a set machine on a RAM - Paige - 1989
33   Dynamic programming via static incrementalization - Liu, Stoller - 1999
31   Program derivation by fixed point computation - Cai, Paige - 1988
31   Automatic transformation of series expressions into loops (context) - Waters - 1991
30   DTRE---A semi-automatic transformation system - Blaine, Goldberg - 1991
26   Rinehart and Winston (context) - Purdom, Brown et al. - 1985
25   Program improvement by internal specialization (context) - Scherlis - 1981
23   Revised report on the algorithmic language Scheme (context) - Abelson, Dybvig - 1998
21   Comparative schematology (context) - Paterson, Hewitt - 1970
20   Set constraints for destructive array update optimization - Wand, Clinger - 1998
16   Eliminating redundant recursive calls (context) - Cohen - 1983
16   Some techniques for recursion removal from recursive functio.. (context) - Arsac, Kodratoff - 1982
16   Principled strength reduction - Liu - 1997
16   Goal-directed program transformation (context) - Wegbreit - 1976
14   incremental-attributionbased program transformation system f.. (context) - Liu, An - 1995
14   MONA Version (context) - Klarlund - 1998
14   A powerful strategy for deriving efficient programs by trans.. (context) - Pettorossi - 1984
11   the synthesis of function inverses (context) - Harrison, Khoshnevisan - 1992
11   From recursion to iteration: what are the optimizations - Liu, Stoller - 1999
10   Improving recursive functions by inverting the order of eval.. (context) - Boiten - 1992
9   Programming with variable functions - Odersky - 1998
7   Characterizations of flowchartable recursions (context) - Walker, Strong - 1973
6   volume 36 of Lecture Notes in Computer Science (context) - Greibach, Program et al. - 1975
6   Recursion versus iteration at higher-orders - Kfoury - 1997
6   Lisp and Symbolic Computation (context) - Filinski, iteration - 1994
6   A new approach to recursion removal (context) - Harrison, Khoshnevisan - 1992
6   From function level semantics to program transformation and .. (context) - Backus - 1985
5   The expressive power of higher-order types or (context) - Jones
3   Transformations of fp program schemes (context) - Kieburtz, Shultis - 1981
2   Linearisation: An optimization for nonlinear functional prog.. (context) - Harrison - 1988
1   An efficient machine-independent procedure for grabage colle.. (context) - Schorr, Waite - 1967



The graph only includes citing articles where the year of publication is known.


Documents on the same site (http://www.cs.indiana.edu/~liu/):   More
From Recursion to Iteration: What Are the Optimizations? - Liu, Stoller (1999)   (Correct)
Eliminating Dead Code on Recursive Data - Liu, Stoller (1999)   (Correct)
Automatic Accurate Stack Space and Heap Space Analysis.. - Unnikrishnan, Stoller, .. (2000)   (Correct)

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC